1 条题解
-
0
思路分析
1. 任务拆解:
- 读取银币个数n
- 读取n个银币的金额
- 找出最大金额的银币及其位置
- 根据最大金额的奇偶性进行相应操作
- 输出处理后的所有银币金额
2. 关键点分析:
- 最大金额只有一个,不需要考虑并列情况
- 判断奇偶性:偶数翻倍,奇数加1
- 需要记录最大金额的位置,以便修改该位置的值
- 其他银币金额保持不变
3. 步骤规划: 第一步:读取银币个数n 第二步:循环读取n个银币金额 第三步:遍历数组,找出最大金额并记录其位置 第四步:判断最大金额的奇偶性 第五步:偶数则翻倍,奇数则加1 第六步:输出所有银币金额
4. 代码对应:
cin>>n:读取银币个数- 第一个
for循环:输入银币金额 max=INT_MIN:初始化最大金额maxi:记录最大金额的位置if(a[i]>max):寻找最大金额及其位置if(max%2==0):判断奇偶性并相应处理- 第二个
for循环:输出处理后的所有金额
- 1
信息
- ID
- 644
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 3
- 标签
- (无)
- 递交数
- 598
- 已通过
- 301
- 上传者