Code & Fun

第13天,今天的题目有点有趣,也有点快。

今天的题目是Stone Game

恩,这道题的答案是:

1
2
3
4
5
6
class Solution {
public:
bool stoneGame(vector<int>& piles) {
return true;
}
};

解释如下:

假设有2n个石头。

因为Alex先选,那么Alex可以选第1或者2n个石头,如果选了1,那么Lee就只能选择2或者2n,Lee不管选哪个,Alex都可以选择一个奇数位的石头,如32n-1,即如果Alex先选了1,那么他可以让Lee一直选到的是偶数位的石头,反之亦然。因此Alex只要在开始选择的时候,计算所有石头奇数位之和以及偶数位之和,判断谁大就可以知道怎么选才能胜利了,因此,直接return true就好了。


本文首发于Code & Fun