Manusia gua gila. Manusia gua lain mengambil tongkat tetapi tongkat itu untukku. Pertarungan manusia gua !
Deskripsi
Manusia gua membutuhkan tongkat tajam untuk menusuk manusia gua lainnya. Manusia gua lainnya juga mencoba menusuk dengan tongkat tajam. Manusia gua dapat menajamkan tongkat, menyodok dengan tongkat, atau memblokir tongkat sempit.
Jika manusia gua menusuk manusia gua lain dengan tongkat tajam, manusia gua lainnya melarikan diri dan aku menang. Tetapi jika manusia gua lain dengan cerdas memblokir ketika saya menusuk, tidak ada yang terjadi kecuali tongkat saya menjadi tumpul dan saya perlu menajamkan lagi.
Manusia gua malas. Juga, manusia gua bodoh. Manusia gua tidak tahu apa yang harus dilakukan, jadi manusia gua perlu program komputer techno yang bagus untuk memberi tahu manusia gua apa yang harus dilakukan.
Memasukkan
Masukan program Anda akan menjadi sejarah peristiwa yang telah terjadi, di mana S
kepanjangan dari mempertajam (yaitu manusia gua menajamkan tongkatnya), P
singkatan dari poke, dan B
singkatan dari block. Input akan berupa riwayat dari kedua sisi (Anda dan lawan), sehingga gerakan Anda dan lawan akan dipisahkan dengan koma ( ,
).
Input contoh:
SPB,SBB
Ini berarti bahwa pemain menajamkan tongkatnya, kemudian menusuk, lalu diblokir, dan lawan menajam, kemudian diblokir, lalu diblokir lagi.
Anda tidak akan menerima input pada giliran 1.
Keluaran
Outputnya sangat mirip dengan input (karena manusia gua tidak terlalu pintar). Program Anda harus menampilkan S
untuk mempertajam, P
untuk menyodok, dan B
untuk blok. Hanya karakter pertama dari output yang akan diperhitungkan, dan input lainnya akan diperlakukan sebagai perintah B
(blok).
S
: mempertajamSaat diasah, ketajaman tongkat gua naik 1 dan tongkat mendapat 1 tusuk tambahan. Setiap poke mengurangi ketajaman tongkat sebesar 1, dan jika ketajaman tongkat adalah 0, itu terlalu membosankan untuk ditusuk. Ketajaman dimulai dari 0. Jika ketajaman mencapai 5, tongkat itu adalah pedang! (Lihat di bawah.)
Jika lawan menusuk saat Anda mengasah (dan mereka memiliki ketajaman> 0), lawan menang!
P
: menyodokSaat menusuk, ketajaman tongkat gua turun 1 dan Anda menusuk lawan! Jika lawan Anda mengasah, Anda menang! Jika lawan menusuk, tongkat Anda mengenai tongkat lawan dan keduanya menjadi tumpul (dengan 1 "unit ketajaman"). Jika lawan menghalangi, tidak ada yang terjadi kecuali tongkat Anda menjadi kusam.
Jika Anda menusuk ketika ketajaman tongkat Anda 5 atau lebih besar, tongkat Anda menjadi pedang dan Anda selalu menang! (Kecuali jika lawanmu juga memiliki pedang dan juga memilih
P
; dalam hal itu, mereka berdua menjadi kusam, dan dapat kembali menjadi tongkat jika ketajaman mereka jatuh di bawah 5.)Anda tidak dapat menyodok dengan ketajaman 0. Jika Anda melakukannya, tidak ada yang akan terjadi.
B
: blokKetika Anda memblokir, tidak ada yang terjadi ketika lawan Anda menusuk. Jika lawan Anda tidak menusuk, blok tidak melakukan apa pun.
Memblokir tidak melindungi terhadap pedang, bahkan jika Anda juga memilikinya!
Aturan dan batasan
Aturan tambahan adalah:
- Program Anda dapat membaca dan menulis file di foldernya sendiri (jangan mencuri!) Jika Anda ingin menyimpan data, tetapi Anda tidak dapat mengakses apa pun di luarnya (dan manusia gua tidak memiliki koneksi internet di hutan belantara).
- Catatan penting pada file : Jika Anda menyimpan file, ingatlah untuk menyimpannya di direktori
players/YourBotsName/somefile.foo
! Direktori kerja saat ini untuk program Anda tidak akan menjadi program Anda!
- Catatan penting pada file : Jika Anda menyimpan file, ingatlah untuk menyimpannya di direktori
- Manusia gua adil: Satu program tidak dapat memiliki kode khusus untuk program lain, dan program tidak dapat saling membantu. (Anda mungkin memiliki banyak program, tetapi mereka tidak dapat berinteraksi satu sama lain dengan cara apa pun.)
- Hakim gua tidak sabar. Jika manusia gua mengambil lebih dari 100 putaran masing-masing untuk menentukan pemenang, hakim menjadi bosan dan kedua manusia gua kalah.
Jika program Anda melanggar aturan atau tidak mengikuti spesifikasi, program tersebut didiskualifikasi, dihapus dari playerlist.txt
, dan semua duel restart dari awal. Jika program Anda didiskualifikasi, pemimpin gua (saya!) Akan mengomentari pos program Anda dan menjelaskan alasannya. Jika Anda tidak melanggar aturan apa pun, program Anda akan ditambahkan ke papan peringkat. (Jika program Anda tidak ada di papan peringkat, tidak ada komentar yang jelas di pos Anda, dan Anda memposting program Anda sebelum waktu "Terakhir diperbarui" di bawah, beri tahu pemimpin gua! Mungkin dia lupa.)
Dalam posting Anda, harap sertakan:
- Sebuah nama.
- Sebuah perintah shell untuk menjalankan program Anda (ex.
java MyBot.java
,ruby MyBot.rb
,python3 MyBot.py
, Dll).- Catatan: input akan ditambahkan ke ini sebagai argumen baris perintah.
- Para gua menggunakan Ubuntu 14.04, jadi pastikan kode Anda berfungsi (secara bebas) di atasnya.
- Nomor versi, jika kode Anda bekerja secara berbeda pada versi berbeda dari bahasa pilihan Anda.
- Kode Anda (jelas).
- Cara mengkompilasi kode, jika perlu.
Kode pengontrol / pengujian, contoh bot
Pemimpin gua menulis kode kontrol dalam C ++, dan mempostingnya di repo Github . Anda dapat menjalankan dan menguji program Anda di sana.
Program yang sangat, sangat sederhana (1 baris!) Juga diposting dalam jawaban di bawah ini .
Penilaian dan papan peringkat
Penilaian itu mudah. Manusia gua mana pun yang menang mendapat poin. Manusia gua dengan poin terbanyak setelah 3 duel melawan setiap manusia gua lainnya menjadi pemimpin manusia gua yang baru!
150 Watson
147 SpeculativeSylwester
146 Gruntt
141 BashMagnon
126 ChargerMan
125 PrisonRules
124 ViceLeader
122 MultiMarkov
122 CaveDoctor
120 RegExMan
120 Hodor
117 FancyTechnoAlgorithm
116 Semipatient
113 Watcher
108 BobCaves
105 MinimaxMan
104 Oracle
102 MaybeMarkov
97 Nash
95 Sicillian
95 Feint
95 Basilisk
94 SharpMan
93 Darwin
91 Nigel
91 JavaMan
88 Entertainer
88 CarefulBot
85 CaveMonkey
84 SSBBP
82 SirPokealot
79 MasterPoker
77 Unpredictable
76 IllogicalCaveman
75 SharpenBlockPoke
75 HuddleWolfWithStick
72 WoodenShield
68 PokeBackBot
68 PatientBlacksmith
66 PatientWolf
58 MonteCarloMan
58 BlindFury
56 BinaryCaveman
55 PokeBot
55 CavekidBlocks
53 Swordmaster
53 Blocker
52 NakedEarlyNerd
52 ModestCaveman
50 LatePokeBot
40 Trickster
39 SwordLover
38 ForeignCaveman
36 Swordsmith *
28 Touche
27 WantASword
27 FoolMeOnce
24 PeriodicalCavemanCicada
11 Aichmophobic
(leaderboard ini dihasilkan secara otomatis secara ajaib)
Pemain yang ditandai dengan *
lemparan kesalahan atau pengecualian pada beberapa titik; para pemain ini juga memiliki komentar pada posting mereka.
Pemain yang tidak bisa dimasukkan dalam tes untuk alasan apapun (pemain ini akan memiliki komentar pada posting mereka menjelaskan masalah): Monkey
, Elephant
, FacileFibonacci
, StudiousSylwester
.
Terakhir diperbarui: 3 Agustus 00:15 (UTC).