@chen_zhe 大家好,这里是March7thDev,一个刚从赛场里出来的蒟蒻()
#include <bits/stdc++.h>
using namespace std;
bool jdD[15]={0};
bool jdC[15]={0};
bool jdH[15]={0};
bool jdS[15]={0};
long long ans=0;
int main()
{
int n;
cin >> n;
if (n == 1)
{
cout << 51 << endl;
return 0;
}
for (int i = 1; i <= n; i++)
{
char n;
char num;
cin>>n>>num;
if (n == 'D')
{
if (num == 'A')
{
jdD[1]=1;
}
if (num == '2')
{
jdD[2]=1;
}
if (num == '3')
{
jdD[3]=1;
}
if (num == '4')
{
jdD[4]=1;
}
if (num == '5')
{
jdD[5]=1;
}
if (num == 6)
{
jdD[6]=1;
}
if (num == 7)
{
jdD[7]=1;
}
if (num == 8)
{
jdD[8]=1;
}
if (num == 9)
{
jdD[9]=1;
}
if (num == 'T')
{
jdD[10]=1;
}
if (num == 'J')
{
jdD[11]=1;
}
if (num == 'Q')
{
jdD[12]=1;
}
if (num == 'K')
{
jdD[13]=1;
}
}
if (n == 'C')
{
if (num == 'A')
{
jdC[1]=1;
}
if (num == 2)
{
jdC[2]=1;
}
if (num == 3)
{
jdC[3]=1;
}
if (num == 4)
{
jdC[4]=1;
}
if (num == 5)
{
jdC[5]=1;
}
if (num == 6)
{
jdC[6]=1;
}
if (num == 7)
{
jdC[7]=1;
}
if (num == 8)
{
jdC[8]=1;
}
if (num == 9)
{
jdC[9]=1;
}
if (num == 'T')
{
jdC[10]=1;
}
if (num == 'J')
{
jdC[11]=1;
}
if (num == 'Q')
{
jdC[12]=1;
}
if (num == 'K')
{
jdC[13]=1;
}
}
if (n == 'H')
{
if (num == 'A')
{
jdH[1]=1;
}
if (num == 2)
{
jdH[2]=1;
}
if (num == 3)
{
jdH[3]=1;
}
if (num == 4)
{
jdH[4]=1;
}
if (num == 5)
{
jdH[5]=1;
}
if (num == 6)
{
jdH[6]=1;
}
if (num == 7)
{
jdH[7]=1;
}
if (num == 8)
{
jdH[8]=1;
}
if (num == 9)
{
jdH[9]=1;
}
if (num == 'T')
{
jdH[10]=1;
}
if (num == 'J')
{
jdH[11]=1;
}
if (num == 'Q')
{
jdH[12]=1;
}
if (num == 'K')
{
jdH[13]=1;
}
}
if (n == 'S')
{
if (num == 'A')
{
jdS[1]=1;
}
if (num == 2)
{
jdS[2]=1;
}
if (num == 3)
{
jdS[3]=1;
}
if (num == 4)
{
jdS[4]=1;
}
if (num == 5)
{
jdS[5]=1;
}
if (num == 6)
{
jdS[6]=1;
}
if (num == 7)
{
jdS[7]=1;
}
if (num == 8)
{
jdS[8]=1;
}
if (num == 9)
{
jdS[9]=1;
}
if (num == 'T')
{
jdS[10]=1;
}
if (num == 'J')
{
jdS[11]=1;
}
if (num == 'Q')
{
jdS[12]=1;
}
if (num == 'K')
{
jdS[13]=1;
}
}
}
for(int i=1;i<=13;i++)
{
if(jdD[i]==false)
ans++;
if(jdC[i]==false)
ans++;
if(jdH[i]==false)
ans++;
if(jdS[i]==false)
ans++;
}
cout<<ans<<endl;
return 0;
}
这份代码浅显易懂,本蒟蒻为了避免出现问题没有使用高级数据结构,接下来是注释版本的程序,请大家不要抄袭
#include <bits/stdc++.h>
using namespace std;
//四种花色
bool jdD[15]={0};
bool jdC[15]={0};
bool jdH[15]={0};
bool jdS[15]={0};
//记录答案
long long ans=0;
int main()
{
int n;
cin >> n;
//特判
if (n == 1)
{
cout << 51 << endl;
return 0;
}
for (int i = 1; i <= n; i++)
{
char n;//花色
char num;//牌号
cin>>n>>num;
//分类讨论(大雾)
if (n == 'D')
{
if (num == 'A')
{
jdD[1]=1;
}
if (num == '2')
{
jdD[2]=1;
}
if (num == '3')
{
jdD[3]=1;
}
if (num == '4')
{
jdD[4]=1;
}
if (num == '5')
{
jdD[5]=1;
}
if (num == 6)
{
jdD[6]=1;
}
if (num == 7)
{
jdD[7]=1;
}
if (num == 8)
{
jdD[8]=1;
}
if (num == 9)
{
jdD[9]=1;
}
if (num == 'T')
{
jdD[10]=1;
}
if (num == 'J')
{
jdD[11]=1;
}
if (num == 'Q')
{
jdD[12]=1;
}
if (num == 'K')
{
jdD[13]=1;
}
}
if (n == 'C')
{
if (num == 'A')
{
jdC[1]=1;
}
if (num == 2)
{
jdC[2]=1;
}
if (num == 3)
{
jdC[3]=1;
}
if (num == 4)
{
jdC[4]=1;
}
if (num == 5)
{
jdC[5]=1;
}
if (num == 6)
{
jdC[6]=1;
}
if (num == 7)
{
jdC[7]=1;
}
if (num == 8)
{
jdC[8]=1;
}
if (num == 9)
{
jdC[9]=1;
}
if (num == 'T')
{
jdC[10]=1;
}
if (num == 'J')
{
jdC[11]=1;
}
if (num == 'Q')
{
jdC[12]=1;
}
if (num == 'K')
{
jdC[13]=1;
}
}
if (n == 'H')
{
if (num == 'A')
{
jdH[1]=1;
}
if (num == 2)
{
jdH[2]=1;
}
if (num == 3)
{
jdH[3]=1;
}
if (num == 4)
{
jdH[4]=1;
}
if (num == 5)
{
jdH[5]=1;
}
if (num == 6)
{
jdH[6]=1;
}
if (num == 7)
{
jdH[7]=1;
}
if (num == 8)
{
jdH[8]=1;
}
if (num == 9)
{
jdH[9]=1;
}
if (num == 'T')
{
jdH[10]=1;
}
if (num == 'J')
{
jdH[11]=1;
}
if (num == 'Q')
{
jdH[12]=1;
}
if (num == 'K')
{
jdH[13]=1;
}
}
if (n == 'S')
{
if (num == 'A')
{
jdS[1]=1;
}
if (num == 2)
{
jdS[2]=1;
}
if (num == 3)
{
jdS[3]=1;
}
if (num == 4)
{
jdS[4]=1;
}
if (num == 5)
{
jdS[5]=1;
}
if (num == 6)
{
jdS[6]=1;
}
if (num == 7)
{
jdS[7]=1;
}
if (num == 8)
{
jdS[8]=1;
}
if (num == 9)
{
jdS[9]=1;
}
if (num == 'T')
{
jdS[10]=1;
}
if (num == 'J')
{
jdS[11]=1;
}
if (num == 'Q')
{
jdS[12]=1;
}
if (num == 'K')
{
jdS[13]=1;
}
}
}
//去重计算(大雾)
for(int i=1;i<=13;i++)
{
if(jdD[i]==false)
ans++;
if(jdC[i]==false)
ans++;
if(jdH[i]==false)
ans++;
if(jdS[i]==false)
ans++;
}
//完美结束,感谢CCF
cout<<ans<<endl;
return 0;
}