A70366. 马里奥的银币1
编程题
入门
知识点
题目描述
马里奥有很多银币,有一天他得到了一张魔法卡,只要使用这张魔法卡,就可以使得他的银币里面的最大的银币金额变得更大。如果他最大的银币是偶数的金额,可以直接翻倍;如果他最大的银币是奇数的金额,可以使得银币金额加 1 。
比如:假设马里奥存有的银币金额分别为 5 7 8 1 4 ,那么最大的银币面值为 8 ,只要使用魔法卡,银币的金额就会变为5 7 16 1 4 ;
再比如:假设马里奥存有的银币金额分别为 5 7 9 1 4 ,那么最大的银币面值为 9 ,只要使用魔法卡,银币的金额就会变为 5 7 10 1 4 ;
已知马里奥众多的银币中,面额最大的银币只有 1 个,请你求出,马里奥使用魔法卡之后,他的银币金额分别是多少?
输入格式
第一行是一个整数 n 代表马里奥有 n 个银币。(n \le 1000)
第二行有 n 个整数,用空格隔开,代表马里奥每个银币的金额。
输出格式
一行有 n 个整数,代表使用过魔法卡之后,马里奥的银币的金额,分别是多少?
输入输出样例
输入 #1
5 5 7 8 1 4
输出 #1
5 7 16 1 4
输入 #2
10 1 8 9 10 7 39 2 21 23 22
输出 #2
1 8 9 10 7 40 2 21 23 22
说明/提示
## 思路
遍历数组,比较每个元素与目标,记录位置或是否存在。
## 步骤
1. 读入数组与目标。
2. 扫描比较。
3. 输出位置或查找结果。
遍历数组,比较每个元素与目标,记录位置或是否存在。
## 步骤
1. 读入数组与目标。
2. 扫描比较。
3. 输出位置或查找结果。