Codeforces R624(Div.3)A 题解
Codeforces Round #624 (Div. 3) A题【Add Odd or Subtract Even】题解
原题链接:Problem - 1311A - Codeforces或CF1311A Add Odd or Subtract Even - 洛谷 | 计算机科学教育新生态
咱们先稍微转一下,加上正奇数就改变了一个数的奇偶性,反之不变;而差为奇数说明两个数之间奇偶性不同,反之相同;另外,由于每次操作数字不限制,要多少有多少,所以我们的问题只剩下奇偶性问题。
再理一下情况:(有个typo,请见谅,如果无法加载请手动观看)
- 这还用说嘛
- 因为减法操作不会改变奇偶性,然而两数奇偶性不同,就要先把a减到$b-1$($b-1$与a奇偶性相同,其实不一定减1,减任意一个奇数都行),再加个1(减多少,加多少)
- 因为减法操作不会改变奇偶性,而且两数奇偶性相同,就直接把a减到b
- 因为加法操作会改变奇偶性,而且两数奇偶性不同,就直接把a加到b
- 因为加法操作会改变奇偶性,而加到b以上后两数之差为奇数,可是只能减偶数,无解
怎么样,是不是像极了数学里令人作呕着迷的分类讨论呢?
最后,上核心代码!
1 | if (a==b) |
Codeforces R624(Div.3)A 题解
You need to set
install_url
to use ShareThis. Please set it in _config.yml
.