1 条题解
-
0
思路分析
1. 任务拆解:
- 遍历所有个位为7的六位数
- 对每个数进行数字移位操作
- 检查移位后的数是否是原数的4倍
- 找到满足条件的数并输出
2. 关键点分析:
- 原数个位为7,形式为:ABCDE7
- 移位操作:将个位7移到首位,得到7ABCDE
- 数学关系:7ABCDE = 4 × ABCDE7
- 通过循环遍历所有可能的六位数
3. 步骤规划:
- 遍历所有个位为7的六位数(100007到999997,步长为10)
- 对每个数i:
- 保存临时变量i1 = i
- 获取个位数字w = i1 % 10
- 删除个位得到ABCDE:i1 /= 10
- 构建新数:w×100000 + i1
- 检查新数是否等于原数的4倍
- 输出满足条件的原数
4. 代码对应:
for(int i=100007;i<1000000;i+=10)→ 遍历个位为7的六位数int i1=i;→ 保存当前数值int w=i1%10;→ 获取个位数字7i1/=10;→ 删除个位得到ABCDEi1=w*100000+i1;→ 构建新数7ABCDEif(i1==i*4)→ 检查是否满足4倍关系cout<<i; break;→ 输出结果并结束
- 1
信息
- ID
- 14
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 382
- 已通过
- 184
- 上传者