icpc:problems:usaco21jan_even_more_odd_photos_b
problems | |
---|---|
名称 | Even More Odd Photos B |
题目编号 | USACO21JAN_B2 |
题目链接 | usaco.org/… |
来源 | USACO |
算法分类 | 数学 |
难易程度 | 容易 |
Even More Odd Photos B
想法
根据奇偶性来进行判断:
- 奇数 + 奇数 = 偶数
- 偶数 + 奇数 = 奇数
所以,重点在奇数上,偶数可以插入任意的奇数组别内,但是如果奇数多了,那需要1个奇数组成偶数加入分组。
代码实现
#include<iostream> using namespace std; int main() { int n, temp, j = 0, o = 0; cin >> n; for (int i = 0; i < n; ++i) { cin >> temp; if(temp%2) j++; else o++; } int ans; if(j < o) { ans = j*2; if(o-j > 0)ans++; } else { ans = o*2; j -= o; ans += j/3*2; if(j%3==1)ans--; if(j%3==2)ans++; } cout << ans; return 0; }
/app/www/public/data/pages/icpc/problems/usaco21jan_even_more_odd_photos_b.txt · 最后更改: 2023/02/14 03:56 由 温婕莺