P7797 [COCI2015-2016#6] BELA(洛谷水题记)

35 篇文章 0 订阅

题目描述

有一个叫 \text{Belote}Belote 的纸牌游戏,游戏只用到 AKQJT987 共八种纸牌。 游戏规则就是将所有纸牌的值加起来,看看谁的值较大,谁就赢。每种纸牌的值都有两种,当其为特殊牌时有一个值,非特殊牌时也有一个值。每种卡牌的值见下表:

现在 \text{Mirko}Mirko 有 4\times N4×N 张纸牌,并已知特殊牌的属性为 BB,请计算 \text{Mirko}Mirko 所有纸牌值的总和。

输入格式

第一行包含整数 NN 和字符 BB。

接下来 4\times N4×N 行,每行包含两个字符。第一个字符为这张纸牌的种类,第二个字符为这张纸牌的属性。若这张纸牌的属性 =B=B,则说明这张纸牌为特殊牌。

输出格式

输出一个整数,为所有纸牌值的总和。

输入输出样例

输入 #1

2 S
TH
9C
KS
QS
JS
TD
AD
JH

输出 #1

60

输入 #2

4 H
AH
KH
QH
JH
TH
9H
8H
7H
AS
KS
QS
JS
TS
9S
8S
7S

输出 #2

92

说明/提示

【样例 2 解释】

纸牌值总和为 11 + 4 + 3 + 20 + 10 + 14 + 0 + 0 + 11 + 4 + 3 + 2 + 10 + 0 + 0 + 0 = 9211+4+3+20+10+14+0+0+11+4+3+2+10+0+0+0=92。

【数据范围】

对于 100\%100% 的数据,1\le N\le 1001≤N≤100,BB 和所有纸牌的属性都属于 SHDC 四种字符中的一种,所有纸牌的种类都属于 AKQJT987 共八种纸牌中的一种。

【题目来源】

题目译自 COCI 2015-2016 CONTEST #6 T1 BELA

本题分值按 COCI 原题设置,满分 50

#include <iostream>
using namespace std;

char sa[8] = {'A', 'K', 'Q', 'J', 'T', '9', '8', '7'};
int normal[8] = {11, 4, 3, 2, 10, 0, 0, 0,};
int teshu[8] = {11, 4, 3, 20, 10, 14, 0, 0};
unsigned long long sum;

int main(){
	short n;
	cin >> n;
	char aim;
	cin >> aim;
	n = n * 4;
	while(n--){
		string tmp;
		cin >> tmp;
		if(tmp[1] == aim){
			for(int i=0; i<8; i++){
				if(sa[i] == tmp[0]){
					sum += teshu[i];
					break;
				}
			}
		}
		else{
			for(int i=0; i<8; i++){
				if(sa[i] == tmp[0]){
					sum += normal[i];
					break;
				}
			}
		}
	}
	cout << sum << endl;
	return 0;
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值