题解 AT3867 【[AGC021A] Digit Sum 2】

本题还是很简单的,主要是找到思路

其实只要先把n的位数加起来,然后再把n的第一位减去1的结果加到另外一个变量中,其余为数都为9

输出最大值OK

#include <iostream>
#include <cstring>
using namespace std;

#define max(a, b) (a > b ? a : b)//宏定义

string s;

int main()
{
    cin >> s;
    int len = s.length() - 1, x, y;
    x = y = 0;
    for(int i = 0; i <= len; i++)
    {
        if(i == 0)
        {
            x += s[i] - '0' - 1;
        }
        else
        {
            x += 9;
        }
        y += s[i] - '0';
    }
    cout << max(x, y) << endl;
    return 0;
}
posted @   HappyBobb  阅读(6)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示