当前位置: 首页 > article >正文

[蓝桥杯]缩位求和

缩位求和

题目描述

在电子计算机普及以前,人们经常用一个粗略的方法来验算四则运算是否正确。

比如:248×15=3720248×15=3720

把乘数和被乘数分别逐位求和,如果是多位数再逐位求和,直到是 1 位数,得

2+4+8=14==>1+4=52+4+8=14==>1+4=5;

1+5=61+5=6;

5×65×6

而结果逐位求和为 3。

5×65×6 的结果逐位求和与 3 符合,说明正确的可能性很大!!(不能排除错误)

请你写一个计算机程序,对给定的字符串逐位求和。

输入描述

输入描述

输入为一个由数字组成的串,表示 n (n<1000)n (n<1000) 位数;

输出描述

输出为一位数,表示反复逐位求和的结果。

输入输出样例

示例

输入

35379

输出

9

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 256M

总通过次数: 5516  |  总提交次数: 5917  |  通过率: 93.2%

难度: 中等   标签: 2018, 模拟, 省赛

方法思路

题目要求对输入的数字字符串反复进行逐位求和,直到结果变为一位数。解决思路如下:

  1. 循环计算:只要数字字符串长度大于1,就继续求和

  2. 逐位求和:遍历字符串的每个字符,将其转换为数字后累加

  3. 更新字符串:将求和结果转换为字符串,作为下一轮输入

  4. 终止条件:当字符串长度为1时,输出结果

这种方法利用了数字位数快速减少的特性(1000位数字求和后最多变为4位数,再求和最多变为2位数),因此效率很高。

#include <iostream>
#include <string>
using namespace std;int main() {string s;cin >> s;while (s.length() > 1) {int sum = 0;for (char c : s) {sum += c - '0';  // 字符转数字并累加}s = to_string(sum);  // 将求和结果转为字符串}cout << s << endl;return 0;
}

代码解释

  1. 输入处理:读取数字字符串 s

  2. 循环求和

    • 当字符串长度大于1时继续循环

    • 初始化求和变量 sum = 0

    • 遍历字符串每个字符:c - '0' 将字符转换为对应数字并累加到 sum

    • 将求和结果 sum 转换为字符串,更新 s

  3. 输出结果:当字符串长度为1时,输出最终结果

示例说明

  • 输入 "35379"

    • 第一轮:3+5+3+7+9 = 27 → 字符串变为"27"

    • 第二轮:2+7 = 9 → 字符串变为"9"(输出)

  • 输入 "999"

    • 第一轮:9+9+9 = 27 → "27"

    • 第二轮:2+7 = 9 → 输出"9"

  • 输入 "0":直接输出"0"

  • 输入 "10":1+0=1 → 输出"1"

http://www.lryc.cn/news/2397518.html

相关文章:

  • MySQ-8.42 MGR 组复制部署及详解
  • css使用scoped之后样式失效问题
  • 【NLP】将 LangChain 与模型上下文协议 (MCP) 结合使用
  • 使用NMEA Tools生成GPS轨迹图
  • 1. pytorch手写数字预测
  • vs中添加三方库的流程
  • JAVASE面相对象进阶之static
  • 深入解析 Redis Cluster 架构与实现(一)
  • (12)java+ selenium->元素定位大法之By_link_text
  • 数据库MySQL集群MGR
  • Ubuntu22.04 安装 ROS2 Humble
  • Spring Boot,注解,@RestController
  • C++中新式类型转换static_cast、const_cast、dynamic_cast、reinterpret_cast
  • AXI 协议补充(二)
  • Linux 基础指令入门指南:解锁命令行的实用密码
  • 标准精读:2025 《可信数据空间 技术架构》【附全文阅读】
  • 山东大学软件学院项目实训-基于大模型的模拟面试系统-面试官和面试记录的分享功能(2)
  • Webug4.0靶场通关笔记05- 第5关SQL注入之过滤关键字
  • ONLYOFFICE文档API:更强的安全功能
  • 深入浅出MQTT协议:从物联网基础到实战应用全解析
  • 解析楼宇自控系统:分布式结构的核心特点与优势展现
  • C#数字图像处理(三)
  • STM32 智能小车项目 L298N 电机驱动模块
  • SQL Transactions(事务)、隔离机制
  • 【动画】unity中实现骨骼蒙皮动画
  • VSCODE的终端无法执行npm命令
  • Langchian - 自定义提示词模板 提取结构化的数据
  • 【机器学习基础】机器学习入门核心:Jaccard相似度 (Jaccard Index) 和 Pearson相似度 (Pearson Correlation)
  • QT之头像剪裁效果实现
  • apptrace 视角下移动端深度链接技术与优势​