Решение задачи Построить строку с Codeforces

Без пояснения   Просмотров: 69


Вам даны три целых положительных числа n, a и b. Вам хочется построить такую строку s длины n, состоящую из строчных букв латинского алфавита, что каждая подстрока длины a содержит ровно b различных букв.

Вам нужно ответить на t независимых наборов тестовых данных.

Напомним, что подстрокой строки s[l…r] называется строка sl,sl+1,…,sr, длина которой равна r−l+1. В этой задаче вам интересны только подстроки длины a.

Код

#include <bits/stdc++.h>

using namespace std;

int main()
{

    long long  t, a, n, b;
    cin >> t;
    for(int i = 0; i < t; ++i){
        cin >> n >> a >> b;
        int k = 0, cur = 97;
        while(n > k){
            cout << char(cur);
            ++k;
            if(cur - 97 == b - 1)
                cur = 97;
            else
                ++cur;
        }
        cout << endl;
    }
    return 0;
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться