有52张牌,分为四种花色,JQK和10一样都算10分,A可以当1分可以当11分,现在已经有一张黑桃Q了(10分),给出一个数字n,问再抽一张牌,他们的和为n的抽法有多少中种。
那么我们来等价一下题意:从A到K四种花色各一张,黑桃Q除外,A可以当1或者11,JQK为10,问值为 n-10 的牌有多少张。
牌的点数都大于等于1,所以如果n-10<=0,答案为0
反之,看有多少种了呗~记住黑桃Q用掉了所以如果需要10的话记得减一~
Code:
#include <cstdio>
#include <string>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll;
// http://codeforces.com/contest/104
// Black Jack
int ans[26]={0};
int main()
{
int n; cin>>n;
for(int i=11;i<20;i++)ans[i]=4;
ans[20]=15; ans[21]=4;
cout<<ans[n];
return 0;
}