이 킹의 - 더 - 언덕 도전은 게임 쇼, 떨어져 기반으로 약한 고리 . 쇼에 익숙하지 않은 사람들을 위해, 이 도전의 핵심은 당신이 투표하는 사람을 다루는 것입니다 .
- 다른 플레이어가 당신보다 똑똑하다면, 당신은 냄비를 얻을 가능성이 적습니다.
- 다른 플레이어가 당신보다 더 어리 석다면, 당신은 얻을 수있는 냄비가 적습니다.
각 라운드 가 시작될 때 팟 은 $ 0부터 시작합니다. 9 명의 플레이어 그룹이 구성되며, 각 플레이어는 1에서 9까지 의 고유 한 Smartness를 받습니다.
각 턴이 시작될 때마다 Pot += Smartness
각 플레이어는 여전히 라운드에 있습니다. 그런 다음 플레이어는 제거하려는 플레이어에 투표합니다. 가장 많은 표를 얻은 플레이어가 제거됩니다. 동점 인 경우 더 똑똑한 선수가 유지됩니다.
라운드에 2 명의 플레이어 만 남았을 때, 그들은 재치의 전투에서 맞서게됩니다. 플레이어가 이길 확률은입니다 Smartness/(Smartness+OpponentSmartness)
. 승리 한 플레이어는 전체 냄비를받습니다.
게임이 끝날 때 가장 많은 돈을받은 플레이어가 승리합니다.
입출력
매 턴마다 현재 상대 목록을 받게됩니다. 당신은 당신의 현명 성과 플레이어 클래스의 라운드 비아 기능에 대한 모든 플레이어의 전체 투표 기록 에 액세스 할 수 있습니다 .
출력으로 투표하려는 플레이어를 나타내는 단일 정수를 반환해야합니다 (스마트 함을 나타냄). 자신을위한 투표 는 허용되지만 권장되지 는 않습니다.
9 라운드는 모든 플레이어가 최소 1000 10000 라운드를 플레이 할 때까지 반복 되며 모든 플레이어가 같은 라운드에서 플레이합니다.
https://github.com/nathanmerrill/WeakestLink 에서 컨트롤러를 찾을 수 있습니다.
플레이어를 만들려면 Player 클래스를 확장하고 PlayerFactory 클래스에 플레이어를 추가해야합니다. 수업은 다음 규칙을 따라야합니다.
다른 플레이어 (동일한 유형의 다른 플레이어 포함)와의 통신 또는 간섭은 엄격히 금지됩니다.
반사 및 정적 변수 (상수 제외)는 허용되지 않습니다.
임의성을 사용
getRandom()
하려면 Player 클래스에서 함수를 제공했습니다 . 시뮬레이션을 결정적으로 사용할 수 있도록 사용하십시오.
데이터에 쉽게 액세스 할 수 있도록 Player 클래스에 많은 기능을 제공했습니다. Github에서 온라인 으로 찾을 수 있습니다 . 플레이어는 새로운 라운드마다 인스턴스화됩니다. "덤 / 자살"플레이어는 허용되지만 같은 전략을 가진 플레이어는 허용되지 않습니다.
점수
377195 WeakestLink.Players.PrudentSniper
362413 WeakestLink.Players.Sniper
353082 WeakestLink.Players.VengefulSniper
347574 WeakestLink.Players.AntiExtremist
298006 WeakestLink.Players.BobPlayer
273867 WeakestLink.Players.MedianPlayer
247881 WeakestLink.Players.TheCult
240425 WeakestLink.Players.Leech
235480 WeakestLink.Players.SniperAide
223128 WeakestLink.Players.Guard
220760 WeakestLink.Players.Anarchist
216839 WeakestLink.Players.RevengePlayer
215099 WeakestLink.Players.IndependentVoter
213883 WeakestLink.Players.SniperKiller
210653 WeakestLink.Players.MaxPlayer
210262 WeakestLink.Players.Bandwagon
209956 WeakestLink.Players.MeanPlayer
208799 WeakestLink.Players.Coward
207686 WeakestLink.Players.Spy
204335 WeakestLink.Players.Hero
203957 WeakestLink.Players.MiddleMan
198535 WeakestLink.Players.MinPlayer
197589 WeakestLink.Players.FixatedPlayer
197478 WeakestLink.Players.HighOrLowNotSelf
181484 WeakestLink.Players.RandomPlayer
165160 WeakestLink.Players.BridgeBurner
src\WeakestLink
나는 javac Game\*.java Players\*.java Main.java
컴파일하고 java -cp .. WeakestLink.Main
실행했다.