在做过许多题目之后,觉得这个比较简单!(不知道为什么,就是喜欢做 Special Judge)
题目说:
-
这篇文章至少 a a a 个词,最多 b b b 个词
-
文章至少包含 b 2 \dfrac{b}{2} 2b 个不同的单词
从第1点中不好做确定一定要写多少个单词。
因为不好确定,那么我们不妨只写 b b b个单词!
对于第二点,我们可以使用字典序来把每一个字母转换成数字,就尽可能避免单词重复次数:
a | b | c | d | e | f | g | h | i | j | … |
---|---|---|---|---|---|---|---|---|---|---|
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | … |
这样的话就可以写出许多不同的单词,我们每一次只需要输出char类型的 (‘a’+对应数字)
即:
printf("%c",(char)'a'+n%10);
那么我们就轻而易举的 A C AC AC了!
A C AC AC代码:
#include<bits/stdc++.h>
using namespace std;
int i;
int main(){
int a,b; scanf("%d%d",&a,&b);
while(b--){
i++;
int n=i;//做一个替换,避免i的值被修改
while(n){
printf("%c",(char)'a'+n%10);
n/=10;
}//输出单词!
printf(" ");
}
return 0;
}