题解 | # 小红的字符串构造#

小红的正整数自增

https://ac.nowcoder.com/acm/contest/78292/A

利用等差数列进行构造。

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n,k; cin>>n>>k;
    vector<char> v(n + 1);
    int pos = 1;
    for(char c = 'a'; pos <= n; c =  (c - 'a' + 1) % 26 + 'a') {
        int now = 1;
        v[pos++] = c;
        while(k >= now) {
            v[pos++] = c;
            k -= now;
            now++;
        }
    }
    for(int i = 1; i <= n; ++i) cout<<v[i];
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务