1 条题解
-
0
思路分析
1. 任务拆解:
- 读取整数n
- 遍历1到n的所有数字
- 对每个数字判断是否为回文数
- 统计回文数的个数
- 输出统计结果
2. 关键点分析:
- 回文数定义:正读和反读都相同的数
- 通过构建反转数来判断是否为回文数
- 所有1位数都是回文数
3. 步骤规划:
- 读取n的值
- 初始化计数器g=0
- 循环遍历1到n的每个数字i:
- 保存临时变量ii = i
- 初始化反转数c=0
- 循环构建反转数:
- 获取个位数字w
- c = c×10 + w
- 删除个位数
- 如果c等于i,计数器加1
- 输出回文数的个数
4. 代码对应:
cin>>n;→ 读取整数nfor(int i=1;i<=n;i++)→ 遍历1到n的所有数字int ii=i;→ 保存当前数值int c=0;→ 初始化反转数while(ii)→ 构建反转数w=ii%10;→ 获取个位数字c=c*10+w;→ 构建反转数ii/=10;→ 删除个位数if(c==i) g++;→ 判断是否为回文数并计数cout<<g;→ 输出回文数的个数
- 1
信息
- ID
- 150
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 2
- 标签
- (无)
- 递交数
- 284
- 已通过
- 176
- 上传者