L1-050 倒数第N个字符串 (15分)
思路:
就是先算出k位字母的所有组合数,然后减去n,在转换为26进制的字符串表示。
代码:
#include <bits/stdc++.h>
using namespace std;
int main() {
int L, N;
int index[10] = {0};
char c;
int count = 0;
cin >> L >> N;
int res = pow(26, L) - N;
while (L--)
{
index[count++] = res % 26;
res /= 26;
}
for (int i = count - 1; i >= 0; i--) cout << (c = 'a' + index[i]);
return 0;
}