题目名称 | 1818. [CQOI2013]新Nim游戏 |
---|---|
输入输出 | newnim.in/out |
难度等级 | ★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 10 |
题目来源 | cstdio 于2014-11-19加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:34, 提交:53, 通过率:64.15% | ||||
Oasiz | 100 | 0.000 s | 0.00 MiB | C++ |
Oasiz | 100 | 0.000 s | 0.00 MiB | C++ |
shy | 100 | 0.002 s | 0.17 MiB | Pascal |
FoolMike | 100 | 0.002 s | 0.29 MiB | C++ |
new ioer | 100 | 0.002 s | 0.29 MiB | C++ |
JSX | 100 | 0.002 s | 0.29 MiB | C++ |
ztx | 100 | 0.002 s | 0.29 MiB | C++ |
0 | 100 | 0.002 s | 0.29 MiB | C++ |
神利·代目 | 100 | 0.002 s | 0.29 MiB | C++ |
niconicoqaq | 100 | 0.002 s | 0.32 MiB | C++ |
关于 新Nim游戏 的近10条评论(全部评论) | ||||
---|---|---|---|---|
线性基练手题
FoolMike
2017-06-09 14:58
6楼
| ||||
Orz。。。数学真奇妙。妙妙妙
| ||||
orz drzdj
| ||||
回复 @zdj :
前排ym
new ioer
2015-04-15 17:57
3楼
| ||||
从大到小枚举每堆石子 能不拿就不拿= =
| ||||
你信不信这个算法的理论复杂度是O(N^4)……
|
传统的Nim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同)。两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴。可以只拿一根,也可以拿走整堆火柴,但不能同时从超过一堆火柴中拿。拿走最后一根火柴的游戏者胜利。
本题的游戏稍微有些不同:在第一个回合中,第一个游戏者可以直接拿走若干个整堆的火柴。可以一堆都不拿,但不可以全部拿走。第二回合也一样,第二个游戏者也有这样一次机会。从第三个回合(又轮到第一个游戏者)开始,规则和Nim游戏一样。
如果你先拿,怎样才能保证获胜?如果可以获胜的话,还要让第一回合拿的火柴总数尽量小。
第一行为整数k。即火柴堆数。
第二行包含k个不超过10^9的正整数,即各堆的火柴个数。
输出第一回合拿的火柴数目的最小值。如果不能保证取胜,输出-1。
6 5 5 6 6 5 5
21
k<=100
CQOI 2013