P9354

由题意可知,猫猫至少需要进行 \(n\) 的数位和次操作。注意到一个关键信息,当有前导 \(0\) 时猫猫会立刻拿走该雪糕棒,因此此时不能修改其数值。所以结论也就出来了:当 \(n\) 中存在 \(0\) 时,答案为 \(n\) 的数位和加 \(9\),否则当任意一位修改为 \(1\) 时,修改其为 \(9\),答案为 \(n\) 的数位和加 \(8\)

代码如下:

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int T;
    cin >> T;
    while( T -- )
    {
	   	int ans = 0,mi = 9;
		string s;
		cin >> s;
		for( int i = 0 ; i < s.size() ; i ++ )
			ans += s[i] - '0',mi = min( mi , s[i] - '0' );
    	if( mi == 0 ) cout << ans + 9 << endl;
    	else cout << ans + 8 << endl;
    }
    return 0;
}
posted @ 2024-01-20 18:12  liyilang2021  阅读(3)  评论(0编辑  收藏  举报