心有灵犀

Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)
Total Submission(s) : 1   Accepted Submission(s) : 1
Font: Times New Roman | Verdana | Georgia
Font Size:  

Problem Description

有太多的优秀的追求者导致女神一直很苦恼,因为她没法决定选择哪个作为自己的王子。
  不过,现在某人给她出了个主意:想追求她,当然得知道她心中所想。所以女神决定对
  这些追求者做一个测试:她先写下心中所想,让追求者猜测,根据他们猜测的结果对
  这些追求者进行分类:
  Prince:王子当然是能想女神所想,只有当某追求者所猜测的内容和女神所写的内容完全一样时,才认为他是Prince;
  Backup:当某追求者所猜测的内容中数字和所写内容中数字完全一致且至少有一个其他字符不同,就认为他是Backup;
  Nobody:除Prince和Backup外的追求者既Nobody;

Input

输入中包含很多组数据,
  每一组数据的第一行是一个整数 n (n < 100),它表示女神写下的内容有多少行。接下来的 n 行是所写内容。
  再往下的一行又是一个整数 m (m < 100),它表示某追求者猜测的内容有多少行。接下来的 m 行是他所猜测的内容。
  当 n = 0 时输入结束。输入中的每一行都不超过 120 个字符。

Output

针对每一组输入,输出下面某一行:
  Run #x: Prince
  Run #x: Backup
  Run #x: Nobody
其中 x 表示是第几组输入(从 1 开始)。

Sample Input

2
What i want is: 10
What i want is: 5
2
What i want is: 10
What i want is: 5
2
The answer is: 10
The answer is: 5
2
The answer is: 10
The answer is: 15
1
1 0 1 0
1
1010
1
The Kings are mean!
1
The Kings are good!
0

Sample Output

Run #1: Prince
Run #2: Nobody
Run #3: Backup
Run #4: Backup
 
 
#include<stdio.h>
#include<string.h>
char a[105][110],b[105][110];
int main()
{
	int n,m,t=0;
	int i,j,k;
	while(scanf("%d",&n),n)
	{
		t++;
		getchar();
		for(i=0;i<n;i++)
			gets(a[i]);
		scanf("%d",&m);
		getchar();
		for(i=0;i<m;i++)
			gets(b[i]);
		int flag=0;
		if(n==m)
		{
			for(i=0;i<n;i++)
				if(strcmp(a[i],b[i])!=0)
					flag=1;
		}
		if(flag==0 && n==m)
			printf("Run #%d: Prince\n",t);
		else
		{
			int t1=0,t2=0;
			char aa[10009],bb[10009];
			for(i=0;i<n;i++)
			{
				int al=strlen(a[i]);
				for(j=0;j<al;j++)
					if(a[i][j]<='9' && a[i][j]>='0')
					{
						aa[t1++]=a[i][j];
						
					}
			}
			for(i=0;i<m;i++)
			{
				int bl=strlen(b[i]);
				for(j=0;j<bl;j++)
					if(b[i][j]<='9' && b[i][j]>='0')
					{
						bb[t2++]=b[i][j];
						
					}
			}
			aa[t1]='\0';
			bb[t2]='\0';
			if(t1==t2 && strcmp(aa,bb)==0)
				printf("Run #%d: Backup\n",t);
			else
				printf("Run #%d: Nobody\n",t);
		}
	}
}


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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值