给定两个整数 构造字符串(秋季每日一题 29)_构造构造字符串(秋季每日一题 29)_构造_02,请你构造一个长度为 构造字符串(秋季每日一题 29)_构造 的字符串 构造字符串(秋季每日一题 29)_ios_04

字符串 构造字符串(秋季每日一题 29)_ios_04

  • 构造字符串(秋季每日一题 29)_构造_06 由前 构造字符串(秋季每日一题 29)_构造_07 个小写字母构成,且前 构造字符串(秋季每日一题 29)_构造_07 个小写字母均在 构造字符串(秋季每日一题 29)_构造_06
  • 构造字符串(秋季每日一题 29)_构造_07

输出任意满足条件的字符串 构造字符串(秋季每日一题 29)_ios_04

输入格式
第一行包含整数 构造字符串(秋季每日一题 29)_字符串_12,表示共有 构造字符串(秋季每日一题 29)_字符串_12

每组数据占一行,包含两个整数 构造字符串(秋季每日一题 29)_构造构造字符串(秋季每日一题 29)_构造_02

输出格式
每组数据输出一个结果,表示满足条件的字符串 构造字符串(秋季每日一题 29)_ios_04

如果答案不唯一,输出任意合理方案均可。

数据范围
构造字符串(秋季每日一题 29)_构造_17
构造字符串(秋季每日一题 29)_构造_18
构造字符串(秋季每日一题 29)_ios_19

输入样例:

3
7 3
4 4
6 2

输出样例:

cbcacab
abcd
baabab

#include<iostream>

using namespace std;

const int N = 110;

int n, k;
char s[N];

int main(){

int t;
cin >> t;

while(t--){

cin >> n >> k;
for(int i = 0; i < n; i++) s[i] = 'a' + (i % k);
s[n] = '\0';

printf("%s\n", s);
}

return 0;
}