2013 成都赛区网赛 D Minimum palindrome

http://acm.hdu.edu.cn/showproblem.php?pid=4731

智商又一次秀了下限   找规律  。。。。   

m=1 , 输出n 个'a'

m>=3  输出 循环的 abc  

主要就是m=2  这个。。。

m结果value
2ab1
3aab2
4aabb2
5aaaba3
6aaabab3
7aaababb3
8aaababbb3
9aaaababba4
10aaaababbaa4
11aaaababbaaa4
12aaaababbaaaa4
13aaaababbaabab4
14aaaababbaababb4
15aaaababbaababba4
16aaaababbaababbaa4
17aaaababbaababbaaa
























之后就是代码了。。。。。。智商啊。。

#include<cstdio>
#include<cstring>
#include<cmath>
#include<queue>
#include<algorithm>
#include<vector>
using namespace std;
#define INF 100000000
int t,n,m;
char ss[10]="babbaa";
int main()
{
	//freopen("in.txt","r",stdin);
	int i,j,k,time=0;;
	scanf("%d",&t);
	while(t--)
	{
		scanf("%d%d",&m,&n);
		printf("Case #%d: ",++time);
		if(m==1)
		{
			for(i=1;i<=n;i++) printf("a");
			puts("");
		}
		else if(m>=3)
		{
			int tmp=n;
			while(tmp>=3)
			{
				printf("abc"); tmp-=3;
			}
			if(tmp==1) printf("a");
			else if(tmp==2) printf("ab");
			puts("");
		}
		else if(m==2)
		{
			int tmp=n;
			if(tmp==1) printf("a");
			else if(tmp==2) printf("ab");
			else if(tmp==3) printf("aab");
			else if(tmp==4) printf("aabb");
			else if(tmp==5) printf("aaaba");
			else if(tmp==6) printf("aaabab");
			else if(tmp==7) printf("aaababb");
			else if(tmp==8) printf("aaababbb");
			else if(tmp==9) printf("aaaababba");
			else if(tmp==10) printf("aaaababbaa");
			else
			{
				printf("aaaa");
				while(tmp-4>=6)
				{
					printf("babbaa");
					tmp-=6;
				}
				tmp-=4;
				if(tmp==1) printf("a");
				else if(tmp==2) printf("aa");
				else
				{
					for(i=0;i<tmp;i++) printf("%c",ss[i]);
				}
			}
			puts("");
		}
	}
	return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值