CF1060B Maximum Sum of Digits

• 194通过
• 336提交
• 题目来源
• 评测方式 RemoteJudge
• 标签
• 难度 提高+/省选-
• 时空限制 2000ms / 512MB
• 提示：收藏到任务计划后，可在首页查看。

题意翻译

记 $S(x)=$ $x\text{的各个数位之和}$。
例如：$S(123)=1+2+3=6$，$S(0)=0$。

给定整数 $n\ \left(1 \le n \le 10^{12}\right)$ ，求一对自然数 $a, b\ (0 \le a, b \le n)$，使得 $S(a)+S(b)$ 最大。输出这个最大值。

题目描述

You are given a positive integer $n$ .

Let $S(x)$ be sum of digits in base 10 representation of $x$ , for example, $S(123) = 1 + 2 + 3 = 6$ , $S(0) = 0$ .

Your task is to find two integers $a, b$ , such that $0 \leq a, b \leq n$ , $a + b = n$ and $S(a) + S(b)$ is the largest possible among all such pairs.

输入输出格式

输入格式：

The only line of input contains an integer $n$ $(1 \leq n \leq 10^{12})$ .

输出格式：

Print largest $S(a) + S(b)$ among all pairs of integers $a, b$ , such that $0 \leq a, b \leq n$ and $a + b = n$ .

输入输出样例

输入样例#1： 复制
35

输出样例#1： 复制
17

输入样例#2： 复制
10000000000

输出样例#2： 复制
91


说明

In the first example, you can choose, for example, $a = 17$ and $b = 18$ , so that $S(17) + S(18) = 1 + 7 + 1 + 8 = 17$ . It can be shown that it is impossible to get a larger answer.

In the second test example, you can choose, for example, $a = 5000000001$ and $b = 4999999999$ , with $S(5000000001) + S(4999999999) = 91$ . It can be shown that it is impossible to get a larger answer.

提示
标程仅供做题后或实在无思路时参考。
请自觉、自律地使用该功能并请对自己的学习负责。
如果发现恶意抄袭标程，将按照I类违反进行处理。