指定された数値を持つ最小の文字列(C ++には指定された値を持つ最小の文字列があります)

問題解決のアイデア:

(1)後ろから前へ、貪欲な選択、再帰的ソリューション

class Solution {
public:
    string getSmallestString(int n, int k) {
        if(n==0) return "";
        if(k-(n-1)>=26) return getSmallestString(n-1,k-26)+'z';
        else if(k-(n-1)>=1 && k-(n-1)<26) return getSmallestString(n-1,n-1)+(char)('a'+k-(n-1)-1);
        else return "";
    }
};

 

おすすめ

転載: blog.csdn.net/coolsunxu/article/details/114651811