我对贪心的理解:https://www.cnblogs.com/AKMer/p/9776293.html
题目传送门:http://codeforces.com/problemset/problem/1060/B
显然贪一点能怼出(9)就往死里怼嘛……然后就直接算就行了。
时间复杂度:(O(len))
空间复杂度:(O(1))
代码如下:
#include <cstdio>
using namespace std;
#define ll long long
ll a,b;
ll read() {
ll x=0,f=1;char ch=getchar();
for(;ch<'0'||ch>'9';ch=getchar())if(ch=='-')f=-1;
for(;ch>='0'&&ch<='9';ch=getchar())x=x*10+ch-'0';
return x*f;
}
int S(ll num) {
int res=0;
while(num)res+=num%10,num/=10;
return res;
}
int main() {
a=read();
while(b<=a)b=b*10+9;
b/=10;printf("%d
",S(b)+S(a-b));
return 0;
}