题目如下
首先我们先理解下题目
第一行为一个整数T(1 <= T <= 10000),代表>游戏一共有T轮
接下来T行,每行为一个字符,字符可能是[0, 9]范围内的数字,也可能是'C'或'D'
如果字符是数字,代表本轮Wonter获得的分数
如果字符是'D',代表本轮Wonter的分数会翻倍
如果字符是'C',代表本轮Wonter的分数被清零
我们可以先设置一个变量为0 使用字符串来识别输入的数据
如果是1-9之间的我们直接加上对应的数
否则根据题目 翻倍或者清零
JAVA代码如下
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int f = 0;
int t = s.nextInt();
while (true) {
if(t == 0) {
break;
}
t -= 1;
String sc = s.next();
char l = sc.charAt(0);
if (l == '0') {
f += 0;
}
if (l == '1') {
f += 1;
}
if (l == '2') {
f += 2;
}
if (l == '3') {
f += 3;
}
if (l == '4') {
f += 4;
}
if (l == '5') {
f += 5;
}
if (l == '6') {
f += 6;
}
if (l == '7') {
f += 7;
}
if (l == '8') {
f += 8;
}
if (l == '9') {
f += 9;
}
if (l == 'D') {
f *= 2;
}
if (l == 'C') {
f = 0;
}
}
System.out.print(f);
}
}
Python代码如下
n = int(input())
c = 0
while True:
if n == 0:
break
n -= 1
p = input()
if p == '0' or p == '1' or p == '2' or p == '3' or p == '4' or p == '5' or p == '6' or p == '7' or p == '8'or p == '9':
c += int(p)
elif p == 'D':
c *= 2
elif p == 'C':
c = 0
print(c)