HDU--4731

题目:

Minimum palindrome

原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4731

分析:找规律。

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<cmath>
 5 #include<algorithm>
 6 using namespace std;
 7 int n,m;
 8 
 9 int main()
10 {
11     int T,cas=1;
12     cin>>T;
13     while(T--)
14     {
15         scanf("%d%d",&m,&n);
16         printf("Case #%d: ",cas++);
17         if(m==2)
18         {
19             switch(n)
20             {
21                 case 1:puts("a");break;
22                 case 2:puts("ab");break;
23                 case 3:puts("aab");break;
24                 case 4:puts("aabb");break;
25                 case 5:puts("aaaba");break;
26                 case 6:puts("aaabab");break;
27                 case 7:puts("aaababb");break;
28                 case 8:puts("aaababbb");break;
29                 default:
30                 {
31                     printf("aaaababb");
32                     int l=n-8;
33                     while(l>=6)
34                     {
35                         printf("aababb");
36                         l-=6;
37                     }
38                     switch(l)
39                     {
40                         case 0:puts("");break;
41                         case 1:puts("a");break;
42                         case 2:puts("aa");break;
43                         case 3:puts("aaa");break;
44                         case 4:puts("aaaa");break;
45                         case 5:puts("aabab");break;
46                     }
47                 }
48             }
49         }
50         else
51         {
52             if(m>3)m=3;
53             for(int i=0;i<n;i++)
54             printf("%c",'a'+(i%m));
55             puts("");
56         }
57     }
58     return 0;
59 }
View Code
原文地址:https://www.cnblogs.com/i-love-acm/p/3323205.html