第三题 - 卡牌

第三题 - 卡牌

题目描述

 一副扑克牌除去大小王以外共有五十二张牌,包含黑桃(spade),红心(heart),梅花(club),方块(diamond)四种类型,每种类型有编号为1~13的十三张牌。

 

现在Josie想要和朋友一起玩牌,但手上的牌她不确定是否完整。请你编写程序,帮她计算一下缺少的牌有哪些。

输入

 第一行输入为现有牌数n,接下来的n行为现有卡牌的信息(包含卡牌类型,卡牌数字),可能有重复的牌出现。

输出

 输出缺少的牌,按照spade, heart, club, diamond的顺序依次输出。若两张牌类型一样,则按照数字大小依次输出。

样例输入

47
S 10
S 11
S 12
S 13
H 1
H 2
S 6
S 7
S 8
S 9
H 6
H 8
H 9
H 10
H 11
H 4
H 5
S 2
S 3
S 4
S 5
H 12
H 13
C 1
C 2
D 1
D 2
D 3
D 4
D 5
D 6
D 7
C 3
C 4
C 5
C 6
C 7
C 8
C 9
C 10
C 11
C 13
D 9
D 10
D 11
D 12
D 13

样例输出 

S 1
H 3
H 7
C 12
D 8
#include<stdio.h>
int main()
{
    int n,i,j,x;
    scanf("%d",&n);
    char c[1000];
    int a[1000],bs[13]={1,2,3,4,5,6,7,8,9,10,11,12,13};
    int bh[13]={1,2,3,4,5,6,7,8,9,10,11,12,13},bc[13]={1,2,3,4,5,6,7,8,9,10,11,12,13},bd[13]={1,2,3,4,5,6,7,8,9,10,11,12,13};
    for(x=0;x<n;x++)
    {
        scanf("%c %d",&c[x],&a[x]);
        if(c[x]=='\n')
        {
            x=x-1;
            continue;
		}
	}
	for(i=0;i<n;i++)//SHCD遍历
	{
	    if(c[i]=='S')
	    {
	        for(j=0;j<13;j++)
	        {
	        	if(a[i]==bs[j])
	        	{
	        		bs[j]=0;
				}
			}
		}
		else if(c[i]=='H')
	    {
	        for(j=0;j<13;j++)
	        {
	        	if(a[i]==bh[j])
	        	{
	        		bh[j]=0;
				}
			}
		}
		else if(c[i]=='C')
	    {
	        for(j=0;j<13;j++)
	        {
	        	if(a[i]==bc[j])
	        	{
	        		bc[j]=0;
				}
			}
		}
		else if(c[i]=='D')
	    {
	        for(j=0;j<13;j++)
	        {
	        	if(a[i]==bd[j])
	        	{
	        		bd[j]=0;
				}
			}
		}
	}
	for(i=0;i<13;i++)//输出S
	{
	    if(bs[i]!=0)
	    {
	        printf("S %d\n",bs[i]);
		}
	}
	for(i=0;i<13;i++)//输出H
	{
	    if(bh[i]!=0)
	    {
	        printf("H %d\n",bh[i]);
		}
	}
	for(i=0;i<13;i++)//输出C
	{
	    if(bc[i]!=0)
	    {
	        printf("C %d\n",bc[i]);
		}
	}
	for(i=0;i<13;i++)//输出D
	{
	    if(bd[i]!=0)
	    {
	        printf("D %d\n",bd[i]);
		}
	}
	return 0;
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

燈灯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值