การประกวดเปิดอย่างถาวร - อัปเดต 10 สิงหาคม 2560
แม้ว่าในวันที่ 5 มิถุนายน 2017 ฉันประกาศผู้ชนะ (ใครจะถูกเก็บไว้เป็นคำตอบที่ดีที่สุด) ฉันจะได้รับบอทใหม่และอัปเดตผลลัพธ์
ผล 5 มิถุนายน
ขอแสดงความยินดีกับผู้ใช้1502040
เนื่องจากไม่มีความสัมพันธ์ฉันจะแสดงเฉพาะ% ของการแข่งขันที่ชนะ
Statistician2
- 95.7%
Fitter
- 89.1%
Nash
- 83.9%
Weigher
- 79.9%
ExpectedBayes
- 76.4%
AntiRepeater
- 72.1%
Yggdrasil
-
AntiGreedy
64.1 % - 64.1%
Reactor
- 59.9%
NotHungry
- 57.3%
NashBot
- 55.1%
Blodsocer
- 48.1%
BestOfBothWorlds
- 48.4%
GoodWinning
- 40.9
Rockstar
%
ArtsyChild
- 40.4%
Assassin
- 38.1 % %
WeightedRandom
- 37.7%
Ensemble
- 37.4%
UseOpponents
- 36.4%
GreedyPsychologist
- 36.3%
TheMessenger
- 33.9%
Copycat
- 31.4%
Greedy
- 28.3%
SomewhatHungry
- 27.6%
AntiAntiGreedy
- 21.0%
Cycler
- 20.3%
Swap
- 19.8%
RandomBot
- 16.2%
ฉันสร้าง Google ชีตด้วยตารางผลลัพธ์ของการจับคู่แต่ละครั้ง: https://docs.google.com/spreadsheets/d/1KrMvcvWMkK-h1Ee50w0gWLh_L6rCFOgLhTN_QlEXHyk/edit?usp=sharing
ขอบคุณPetri Dilemmaฉันพบว่าตัวเองสามารถรับมือกับ King of the Hill นี้ได้
เกม
เกมนี้เป็น "Rock-Paper-Scissors" แบบง่าย ๆ พร้อมการบิด: คะแนนที่ได้รับจากชัยชนะเพิ่มขึ้นระหว่างการแข่งขัน (โหลด R, P หรือ S ของคุณ)
- กระดาษชนะร็อค
- กรรไกรชนะกระดาษ
- ร็อคชนะกรรไกร
ผู้ชนะจะได้รับคะแนนมากที่สุดเท่าที่เขาเล่น
ผู้แพ้จะเพิ่มขึ้น 1 เมื่อเล่นของเขา
ในกรณีที่เสมอกันผู้เล่นแต่ละคนจะเพิ่มภาระในการเล่นของเขา 0.5
หลังจากเล่นไปแล้ว 100 ครั้งผู้ที่มีคะแนนมากกว่าจะเป็นผู้ชนะ
เช่น: P1 โหลด [10,11,12] (หิน, กระดาษ, กรรไกร) และ P2 [7,8,9] P1 เล่น R, P2 เล่น P. P2 ชนะและได้รับ 8 คะแนน การโหลด P1 กลายเป็น [11,11,12] การโหลด P2 ยังคงเหมือนเดิม
ข้อมูลจำเพาะของความท้าทาย
โปรแกรมของคุณต้องเขียนด้วย Python (ขออภัยฉันไม่ทราบวิธีจัดการอย่างอื่น) คุณต้องสร้างฟังก์ชั่นที่ใช้ตัวแปรแต่ละตัวเหล่านี้เป็นอาร์กิวเมนต์ในแต่ละการประมวลผล:
my_points, opp_points, my_loaded, opp_loaded, my_history, opp_history
points
- คะแนนปัจจุบัน (ของคุณและของคุณ opp)
loaded
- อาร์เรย์พร้อมโหลด (ตามลำดับ RPS) (ของคุณและของคุณ opp)
history
- สตริงที่มีการเล่นทั้งหมดตัวละครตัวสุดท้ายคือการเล่นครั้งสุดท้าย (คุณและคุณ opp)
คุณจะต้องกลับ"R"
, หรือ"P"
"S"
หากคุณจะคืนสิ่งที่แตกต่างออกไปมันจะเป็นการสูญเสียการแข่งขันโดยอัตโนมัติ
กฎระเบียบ
คุณไม่สามารถเปลี่ยนฟังก์ชั่นในตัว
การทดสอบ
ฉันจะอัปเดต Git ด้วยรหัสและบอททั้งหมดที่มีการคำนวณ: https://github.com/Masclins/LoadedRPS
การตัดสิน
ผู้ชนะจะได้รับการตัดสินโดยการเลือกบุคคลที่มีการแข่งขันมากที่สุดหลังการแข่งขันครบ 1,000 รอบ ความสัมพันธ์จะถูกทำลายโดยการแข่งขันที่ผูกไว้ กำลังเล่นการแข่งขันมากกว่า 1,000 รายการมากกว่าหนึ่งรายการเนื่องจากฉันคาดว่าจะมีการสุ่มจำนวนมากและวิธีการสุ่มนั้นมีความเกี่ยวข้องน้อยกว่า
คุณสามารถส่งได้ถึง 5 บอท
การประกวดสิ้นสุดในวันที่กรกฏาคม 4 มิถุนายน (ที่จะเป็นวันสุดท้ายที่ผมจะยอมรับคำตอบใด ๆ ) และกรกฏาคม 5 มิถุนายนผมจะโพสต์ stadings สุดท้าย (อาจพยายามที่จะโพสต์ advancemnt ก่อน)
เนื่องจากนี่เป็น KOTH แรกของฉันฉันเปิด 100% เพื่อเปลี่ยนแปลงทุกอย่างเพื่อการปรับปรุงเช่นจำนวนการแข่งขันที่เล่นกับบอทแต่ละตัว
แก้ไขไปแล้ว 1,000 แมทช์เนื่องจากฉันเห็นว่ามีส่วนเกี่ยวข้องค่อนข้างสุ่ม
runcode
และbots
) ได้ไหม