题解:P14758 役满之泪
题意
告诉你手上和国士无双相关的牌的数量,问你自摸和出国士无双至少要摸多少牌。
分析
开一个桶记录出现
首先,如果啥也没有,需要摸
只要出现过的牌,至少会用到一张,所以每出现一种可以少摸一张牌。
然后如果某种牌出现了至少两次,可以再少摸一张。
实现
#include<bits/stdc++.h>
using namespace std;
const int N = 20;
int a[N],res = 14,c[5];
int main()
{
for(int i = 1; i <= 13; i ++) cin>>a[i];
for(int i = 1; i <= 13; i ++) c[a[i]] ++;
if(c[2] + c[3] + c[4]) res --;
res -= c[1] + c[2] + c[3] + c[4];
cout<<res<<endl;
return 0;
}