恭喜你RE了此题
查看原帖
恭喜你RE了此题
637788
kimi0705楼主2023/6/1 20:31
#include <bits/stdc++.h>
using namespace std;
int n, k, End;
string s;
vector<char> a[30];
int main()
{
    cin >> n >> k;
    s[0] = 'a', s[1] = k + 'a' - 1, End = k;
    for (int i = 1; i <= k; i++)
        for (char ch = 'a'; ch <= 'a' + k - 1; ch++)
            a[i].push_back(ch);
    a[1].pop_back();
    cout << s[0] << s[1];
    for (int i = 2; i < n; i++)
    {
        if (i < k * k)
        {
            s[i] = a[End][a[End].size() - 1];
            a[End].pop_back();
            End = s[i] - 'a' + 1;
        }
        else
            s[i] = s[i % (k * k)];
        cout << s[i];
    }
}
2023/6/1 20:31
加载中...