志在顶峰的人,绝不会因留恋半山腰的奇花异草,而停止攀登的脚步。
——高尔基
除数博弈https://leetcode-cn.com/problems/divisor-game/
数学法:数学类的题目总是比较巧妙
class Solution {
public:
bool divisorGame(int n) {
return n % 2 == 0;
}
};
动态规划c++实现
class Solution {
public:
bool divisorGame(int n) {
vector<int> f(n + 5, false);
f[1] = false;
f[2] = true;
for (int i = 3; i <= n; ++i) {
for (int j = 1; j < i; ++j) {
if (i % j == 0 && !f[i - j]) {
f[i] = true;
break;
}
}
}
return f[n];
}
};