[RQNOJ]PID3-Jam的计数法

http://www.rqnoj.cn/problem/3

 1 #include 
 2 int s,t,w;
 3 
 4 /*
 5 *函数功能:生成下个jam数
 6 *参数:
 7 *----->1 当前jam数字符串。*/
 8 int create_jam(char *jam);
 9 
10 int main(){
11     char jam[27];
12     int i;
13     while(scanf("%d%d%d",&s,&t,&w)!=EOF){
14         scanf(" %s",jam);
15         for(i=0;i<5;i++)
16             if(create_jam(jam))
17                 puts(jam);
18     }
19     return 0;
20 }
21 
22 int create_jam(char *jam){
23     int j=w-1,k=t;
24     while(j>=0&&jam[j]=='a'-1+k){
25         j--;
26         k--;
27     }
28     if(j<0)
29         return 0;
30     while(jam[j]!='a'-1+k)
31         k--;
32     while(jam[j]){
33         jam[j]='a'+k;
34         j++;
35         k++;
36     }
37     return 1;
38 }

转载于:https://www.cnblogs.com/KurokoTetsuya/p/3579255.html

你可能感兴趣的:([RQNOJ]PID3-Jam的计数法)