Codeforces Round #719 (Div. 3) B. Ordinary Numbers
Posted 嗯我想想
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #719 (Div. 3) B. Ordinary Numbers相关的知识,希望对你有一定的参考价值。
B. Ordinary Numbers
题目大意:
给你一个数,让你判断这个数的前面有多少个类似与 1,11,111这样的数
思路分析:
读入的时候,可以以字符串的方式读入,方便判断位数,也方便后续的一些操作~
AC代码:
#include <bits/stdc++.h>
using namespace std;
int n;
int main() {
cin >> n;
while (n--) {
string s;
cin >> s;
int sum = 0;
sum += 9 * (s.length() - 1);
bool flag = true;
for(int i = 0; i < s.size();i++) {
if(s[i] - '0' == s[0] - '0')
continue;
else if(s[i] - '0' < s[0] - '0') {
flag = false;
break;
} else if(s[i] - '0' > s[0] - '0') {
flag = true;
break;
}
}
if(flag)
sum += s[0] - '0';
else
sum += s[0] - '0' - 1;
cout << sum << endl;
}
}
以上是关于Codeforces Round #719 (Div. 3) B. Ordinary Numbers的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces Round #719 (Div. 3)Codeforces-1520ABCDE
Codeforces Round #719 (Div. 3) ABCDEF题解
Codeforces Round #719 (Div. 3) A-E
Codeforces Round #719 (Div. 3) A-G题解 G题详细注释