「解题报告」ARC155C Even Sum Triplet
这题做的我特别气,所以我写下。
三个数和为偶数说明三个偶数或者两个奇数一个偶数。观察发现如果存在奇奇偶的情况那就可以把所有的奇数放到一边,并且可以任意重排,偶数任意重排;观察最后一个样例可以发现有可能没有奇奇偶的情况,但是奇数已经相等只需要将每一段偶数重排即可。
如果你只发现了这点东西,可能会 WA 一堆点。
接下来是所有的情况:
- 原数组不相等:直接 No。
- 全部都是奇数:奇数没法重排,因为换不动,如果数组相等就 Yes,否则 No。
- \(n - 2\) 个奇数,\(2\) 个偶数:因为 \(2\) 个偶数没法换,所以相对位置不变,如果相对位置改变了是 No。
- \(A\), \(B\) 中有一个存在奇奇偶,另一个不存在:因为交换是可逆的,奇奇偶不可能拆开,所以直接 No。
- 两个都存在奇奇偶:如果不是上述的两个偶数的情况就都是 Yes。
- 两个都不存在奇奇偶,并且有奇数的位置 / 值不相等:直接 No。
- 两个都不存在奇奇偶,且有两段中的偶数无法重排使得相等:No。
- 两个都不存在奇奇偶,且有一段中的偶数有两个,且这两个偶数的相对位置不相等:两个偶数换不了位置,所以 No。
哈哈,你这题出的真有意思,第八种情况我 9:50 都走到四楼了突然想起来,然后爬回五楼把最后一种情况写了然后过了。麻了。