1 条题解
-
0
加法输入检查
算法思路
用整行读取保留所有空格,寻找第一个半角空格并分割。对每个字段依次检查:非空、全部由数字组成、数值在 内。数字累积时,一旦超过 即可返回不合法,避免超长输入造成溢出。最后按合法性分别输出数值或问号。
正确性证明
第一个空格的位置唯一,因此分割与定义一致,后续空格都留在第二字段。逐字符检查排除所有非数字字段。对全数字字段,按十进制累积得到其数值;若中途超过 ,继续追加数字只会保持超过上限,提前拒绝正确。累积完成后再检查是否至少为 ,故合法性判定充要。输出按两个判定的四种组合处理,恰好符合题意。输出数值自然去除了前导零。
复杂度分析
设输入行长为 ,时间复杂度为 ,存储输入及字段所需空间为 。
信息
- ID
- 728
- 时间
- 1000ms
- 内存
- 256MiB
- 题目 Rating
- 标签
- 递交数
- 164
- 已通过
- 26
- 上传者