小 Z 这天想到了一个游戏,这个游戏叫填数游戏,他会给出最多五个空格,每个空格上都可以填上一个数字 (0~9) 。小Z会指定一部分空格填上 “小 Z 专属数字”(用符号 0~9 表示),被指定的空格不能修改,其他空格可以填上任意数字(用符号 ‘#’ 表示)。每填满一次空格,并形成一个新的不带任何前导零的十进制正整数,就能够获得一分。
例如: 4# :表示有两个空格,第一个空格填上了“ 小 Z 专属数字 4 ”,第二个空格可以填上任意数字 0~9 ,所以这次游戏最多能获得 10 分;
小 Z 把这个游戏带给了小 Y 玩,并让小 Y 玩了 n 次。现在告诉你每次游戏的局势(用 ‘#’ 和数字表示),需要你帮助小 Y 求出每次游戏他能够最多获得多少分数 ?
第一行输入一个正整数 n ,表示一共玩了 n 次游戏。
接下来 n 行,每行一个字符串 s 由‘#’和数字组成,表示这一次游戏的局势。
输出 n 行,第 i 行输出第 i 次游戏小 Y 最多能获得的分数
8
##
#
0
9
03
1##7
#5#
9##99
90
9
0
1
0
100
90
100
对于 100% 的数据,1≤n≤20000,1≤∣s∣≤5
∣s∣ :表示字符串的长度
这题我的代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
string s;
cin >> n;
while (n--)
{
cin >> s;
int ans = 1;
if (s[0] == '0') ans = 0;
if (s[0] == '#') ans = 9;
for (int i = 0; i < s.size(); i++)
{
if (s[i] == '#') ans += 10;
}
cout << ans << endl;
}
return 0;
}
求条