คำถามติดแท็ก king-of-the-hill

King-of-the-hill หมายถึงเกมที่การส่งผลกระทบกับและแข่งขันกันในบางรูปแบบของเกม การแข่งขันที่โปรแกรมหลุมต่อกันโดยไม่มีการโต้ตอบควรใช้ [ท้าทายรหัส]

1
KoTH: Gomoku (ห้าแถว)
Gomokuหรือห้าในแถวเป็นเกมกระดานที่เล่นโดยผู้เล่นสองคนในตารางด้วยหินสีดำและสีขาว ใครก็ตามที่สามารถวาง5หินในแถว (แนวนอนแนวตั้งหรือแนวทแยงมุม) ชนะเกม15×1515×1515 \times 15555 กฎระเบียบ ใน KoTH นี้เราจะเล่นกฎ Swap2 ซึ่งหมายความว่าเกมประกอบด้วยสองขั้นตอน: ในระยะแรกผู้เล่นสองคนจะตัดสินว่าใครจะไปก่อน / ผู้ที่เล่นเป็นสีดำหลังจากนั้นพวกเขาจะวางหินหนึ่งก้อนในแต่ละรอบโดยเริ่มจากผู้เล่น ใครเลือกสีดำ ระยะแรก ให้ผู้เล่นเป็นA & BและAจะเปิดเกม: Aวางสองหินสีดำและสีขาวบนกระดาน Bสามารถเลือกหนึ่งในสามการเคลื่อนไหวต่อไปนี้: ผู้เล่นBตัดสินใจที่จะเล่นเป็นสีดำ: เฟสแรกสิ้นสุดลง ผู้เล่นBตัดสินใจที่จะวางหินสีขาวและเล่นสีขาว: ช่วงแรกจบลง ผู้เล่นBตัดสินใจที่จะเล่นหนึ่งดำและหินขาวหนึ่งก้อน: Aจะเลือกสี เฟสเกม ผู้เล่นแต่ละคนวางก้อนหินสีเดียวบนกระดานเริ่มจากผู้เล่นที่เล่นเป็นสีดำสิ่งนี้จะดำเนินต่อไปจนกว่าจะไม่มีที่ว่างในการเล่น (ในกรณีนี้คือเน็คไท) หรือผู้เล่นคนหนึ่งเล่นก้อนใน แถว (ในกรณีที่ผู้เล่นชนะ)555 แถวหมายถึงแนวนอนแนวตั้งหรือแนวทแยง การชนะคือการชนะ - ไม่สำคัญว่าผู้เล่นจะทำคะแนนได้มากกว่าหนึ่งแถวหรือไม่ กฎของเกม KoTH ผู้เล่นแต่ละคนเล่นกับผู้เล่นคนอื่นสองครั้ง: เริ่มแรกมันจะถูกสุ่มเลือกว่าใครจะไปก่อน ในเกมถัดไปผู้เล่นที่ได้เล่นครั้งสุดท้ายต้องไปก่อน การชนะนั้นมีค่า 2 คะแนน, เสมอ 1 และแพ้ 0 …

6
ตัวเลขที่เป็น palindromes ใน N base
ได้รับจำนวนเต็มไม่เป็นลบn >= 0ออกไปตลอดกาลลำดับเลขx_i >= 3ที่มี palindromes ในตรงnฐานที่แตกต่างกันที่ฐานที่สามารถb2 <= b <= x_i-2 นี้เป็นพื้นผกผันของOEIS A126071nที่คุณส่งออกที่ดัชนีอยู่ในลำดับที่มีค่า มันแตกต่างกันเล็กน้อยเพราะฉันเปลี่ยนดังนั้นคุณจึงไม่สนใจเบสb = x_i-1, x_i, x_i+1เนื่องจากผลลัพธ์สำหรับเบสเหล่านั้นมักจะเหมือนเดิมเสมอ นอกจากนี้การชดเชยจะแตกต่างกัน x_iจะมีการ จำกัด จำนวน>= 3เพื่อให้ระยะแรกของผลสำหรับแต่ละnคือA037183 โปรดทราบว่ารูปแบบผลลัพธ์มีความยืดหยุ่น แต่ตัวเลขควรคั่นด้วยวิธีที่ดี ตัวอย่าง: n seq 0 3 4 6 11 19 47 53 79 103 137 139 149 163 167 ... 1 5 7 8 9 12 …
10 code-golf  sequence  base-conversion  palindrome  code-golf  array-manipulation  matrix  code-golf  string  ascii-art  code-golf  ascii-art  physics  code-golf  number  sequence  fibonacci  code-golf  ascii-art  packing  code-golf  string  hexadecimal  code-challenge  restricted-source  decision-problem  binary  code-golf  code-golf  code-golf  stack-exchange-api  code-golf  string  parsing  generation  data-structures  code-golf  kolmogorov-complexity  graphical-output  code-golf  array-manipulation  integer  generation  data-structures  code-golf  number  random  probability-theory  king-of-the-hill  java  minesweeper  code-golf  string  kolmogorov-complexity  animation  code-golf  string  code-golf  code-golf  quine  code-golf  internet  code-golf  arithmetic  base-conversion 

7
สร้างเมทริกซ์ของจาโคเบียน
ใช้เวกเตอร์ของราชวงศ์และใช้บางฟังก์ชั่นอนุพันธ์ทั่วไป จาโคเบียนจะได้รับแล้วโดยเมทริกซ์ดังกล่าวว่า: ตัวอย่างเช่นสมมติว่าและm=3 n=2จากนั้น (ใช้การจัดทำดัชนีตาม 0) ในขณะนั้นชาวโคเบียนfนั้น เป้าหมายของการท้าทายนี้คือการพิมพ์เมทริกซ์จาโคเบียนนี้ อินพุต โปรแกรม / ฟังก์ชั่นของคุณควรรับข้อมูลเป็นจำนวนเต็มบวกจำนวนเต็มสองตัวmและnแสดงจำนวนส่วนประกอบของfและuตามลำดับ อินพุตอาจมาจากแหล่งที่ต้องการ (stdio, function function, ฯลฯ ) คุณอาจกำหนดลำดับที่ได้รับสิ่งเหล่านี้และสิ่งนี้จะต้องสอดคล้องกับคำตอบของคุณ (โปรดระบุในคำตอบของคุณ) เอาท์พุต สิ่งที่แสดงถึงเมทริกซ์ของจาโคเบียน การเป็นตัวแทนนี้จะต้องสะกดองค์ประกอบทั้งหมดของเมทริกซ์ของจาโคเบียนอย่างชัดเจน แต่รูปแบบที่แน่นอนของแต่ละคำจะถูกนำไปปฏิบัติตราบใดที่ไม่มีความชัดเจนในสิ่งที่สร้างความแตกต่างและด้วยความเคารพต่อสิ่งต่างๆ ตัวอย่างแบบฟอร์มที่ยอมรับได้สำหรับการแทนเมทริกซ์: รายการของรายการที่แต่ละรายการของรายการด้านนอกสอดคล้องกับแถวของ Jacobian และแต่ละรายการของรายการภายในสอดคล้องกับคอลัมน์ของ Jacobian สตริงหรือเอาต์พุตข้อความที่แต่ละบรรทัดเป็นแถวของ Jacobian และแต่ละตัวคั่นคั่นรายการในบรรทัดสอดคล้องกับคอลัมน์ของ jacobian การแสดงกราฟิก / ภาพบางส่วนของเมทริกซ์ ตัวอย่าง: สิ่งที่แสดงโดย Mathematica เมื่อใช้MatrixFormคำสั่ง วัตถุเมทริกซ์หนาแน่นอื่น ๆ ที่ทุกรายการถูกเก็บไว้ในหน่วยความจำแล้วและสามารถสอบถามได้ (เช่นคุณไม่สามารถใช้วัตถุเครื่องกำเนิดไฟฟ้า) ตัวอย่างจะเป็นวิธีที่ Mathematica แสดงถึงวัตถุเมทริกซ์ภายใน ตัวอย่างรูปแบบรายการ: สตริงของฟอร์มd f_i/d …

2
ปกป้องความสามารถของคุณกับชีวิตของคุณ!
ให้เล่น Kick The Can! แม้ว่า Moogie จะเป็นผู้ชนะในปัจจุบันหากใครก็ตามที่สามารถสวมมงกุฎได้เขาก็ควรที่จะทำเช่นนั้น Kick the กระป๋องเป็นเกมสำหรับเด็ก เกี่ยวข้องกับผู้พิทักษ์และผู้โจมตีหลายคน วันนี้มันไม่ใช่เกมอีกต่อไปแล้ว! งานของคุณคือการเขียนบอทที่เล่นเพื่อที่จะชนะสไตล์ของกษัตริย์ ! https://en.wikipedia.org/wiki/Kick_the_can มีความแตกต่างที่สำคัญในเกมนี้ ความแตกต่างที่สำคัญอันดับแรกคือเกมนี้มีผู้เล่นหลายคน (5v5) ความแตกต่างที่สำคัญที่สองคือบอททั้งสองชุดสามารถฆ่าและกำจัดผู้เล่นศัตรูด้วยระเบิดและระเบิด! บอตไม่สามารถมองเห็นเหมืองใด ๆ (โดยไม่คำนึงถึงระยะทาง) หรือผู้เล่นที่อยู่ห่างออกไปเกินห้าช่วงตึก! แผนที่เป็นเขาวงกตดังนี้ เขาวงกตนี้สร้างขึ้นตามขั้นตอนโดยการสร้างเขาวงกตเป็นครั้งแรกโดยใช้อัลกอริทึมย้อนรอยซ้ำแบบย้อนกลับ จากนั้นวางช่องที่แสดงใน (รวมทั้งทำให้เขาวงกต "ไม่สมบูรณ์" มากขึ้นเขาวงกตมีความกว้าง 65x65 บล็อกและมีการจัดทำดัชนีเป็นศูนย์ดังนั้นธงสีฟ้า (สามารถ) ได้ที่ 1,1 และธงแดง (สามารถ) คือ ที่ 63,63. ทีมสีน้ำเงินวางไข่ที่ 2,2 และ 3,3 4,4 เป็นต้นทีมสีแดงวางไข่ที่ 62,62 และ 61,61, 60,60 ฯลฯ …

3
ไพ่ยูเครอ (เกมไพ่)
แนวคิดของความท้าทายนี้ง่ายมาก: สร้างบอทเพื่อเล่นการ์ดเกมไพ่ยูเครอ สำหรับบรรดาของคุณที่ยังไม่รู้จักพวกเขาฉันได้เขียนกฎให้กับ Euchre ที่นี่เนื่องจากพวกเขาเกี่ยวข้องกับความท้าทายนี้ ฉันแนะนำให้ใช้ python หรือบางอย่างที่คล้ายกัน แต่ข้อ จำกัด จริง ๆ เท่านั้นคือมันต้องเข้ากันได้กับโค้ดคอนโทรลเลอร์ การป้อนข้อมูล: บอทยูแคร์ของคุณจะได้รับการป้อนข้อมูลที่แตกต่างกันขึ้นอยู่กับเฟสปัจจุบันของเกมหรือรอบ โดยทั่วไปแล้วคุณจะได้รับช่วงของเกมในบรรทัดแรกตามด้วยเครื่องหมายจุลภาคและจำนวนคะแนนที่ทีมของคุณมีแล้วข้อมูลที่เกี่ยวข้องในบรรทัดต่อไปนี้ ตามลำดับบอทของคุณจะได้รับการป้อนข้อมูลตามลำดับต่อไปนี้: Ordering Trump: js,ah,qc,ts,jc // the cards in your hand 2 // number of points your team has 0 // number of tricks your team has taken ordering // the phase of the game …

8
ราชาแห่งกำแพง
แจ้งให้ทราบ ความท้าทายนี้สิ้นสุดลงแล้วและจะไม่ถูกตัดสินอีกครั้ง แต่สามารถโพสต์คำตอบและทดสอบโปรแกรมของคุณกับผู้อื่นด้วยโปรแกรมควบคุม! เป้าหมายของความท้าทายนี้คือการทำให้ AI ชนะการต่อสู้กับ AI อื่นโดยการวางกำแพงบนตาราง 25x25 เพื่อป้องกันคู่ต่อสู้ อินพุต 25 บรรทัดคั่นด้วยและลงท้ายด้วย;อาร์กิวเมนต์บรรทัดคำสั่ง ซึ่งจะรวมถึง: ช่องว่าง . กำแพง # ผู้เล่น1และ2(ฝ่ายตรงข้ามอยู่เสมอ2) ตัวอย่าง ###############..........;..............#..........;..............#..........;..............#..........;..............#..........;...........1###..........;.........................;.........................;.........................;.........................;.........................;.........................;.........................;.........................;.........................;.........................;.........................;.........................;.........................;...................###...;...................#.##..;2..................#..#..;#..................##.#..;#...................#.###;....................#####; ซึ่งแสดงถึงแผนที่ดังต่อไปนี้: ###############.......... ..............#.......... ..............#.......... ..............#.......... ..............#.......... ...........1###.......... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ......................... ...................###... ...................#.##.. 2..................#..#.. #..................##.#.. #...................#.### ....................##### เอาท์พุต สตริงที่เขียนไปยังคอนโซลโดยเริ่มต้นด้วยอักขระที่แสดงถึงทิศทางที่ AI …

5
Blobs หิว KoTH
การประกวดเสร็จสิ้น! อ่านความคิดเห็นเกี่ยวกับ blobs เพื่อดูคะแนนของพวกเขา KOTH นี้เป็นแรงบันดาลใจอย่างอิสระโดยรองพื้นของคัดเลือกโดยธรรมชาติจำลอง บอทของคุณคือหยด เพื่อความอยู่รอดคุณต้องกินเม็ดเพื่อฟื้นพลังงานซึ่งใช้ในการย้าย ด้วยพลังงานพิเศษหยดสามารถแบ่งออกเป็นสอง พลังงานและการเคลื่อนไหว หยดของคุณเริ่มต้นแต่ละรอบด้วยพลังงาน 100 ครั้งและไม่มีขีด จำกัด ปริมาณพลังงานที่สามารถรวบรวมได้ แต่ละรอบวิ่งเป็นรอบโดยแต่ละหยดมีตัวเลือกให้เคลื่อนที่ทิศเหนือทิศตะวันออกทิศใต้หรือทิศตะวันตกในรอบที่กำหนดหรือหยุดนิ่ง การเคลื่อนย้ายใช้พลังงาน 1 พลังงานและพลังงานนิ่งอยู่ที่ 0.25 ความยาวด้านของแผนที่คือceil(0.25 * blobCount) * 2 - 1หน่วยอย่างน้อย 9 หน่วย Blobs ทั้งหมดเริ่มต้นที่ขอบของแผนที่โดยมีหนึ่งวางในแต่ละมุมและทุกหยดถัดไปจะถูกวางไว้ 2 หน่วยจากคนอื่น ๆ ทุกๆ 30 รอบคลื่นของเม็ดจะถูกวางในจุดสุ่มรอบแผนที่อย่างน้อย 1 หน่วยจากขอบใด ๆ แต่ละครั้งที่คลื่นของเม็ดปรากฏขึ้นปริมาณของเม็ด (แต่เดิมจำนวนสองเท่าของ blobs หรือความกว้างของแผนที่แล้วแต่จำนวนใดจะใหญ่กว่า) ในคลื่นถัดไปจะลดลง 1 โดยบังคับให้จำนวน blobs ลดลงเมื่อเวลาผ่านไป เม็ดแต่ละคืนพลังงานระหว่าง …

4
Cave Rangers - สำรวจความมืด
เพื่อนนักธรณีวิทยาของคุณเกือบจะเตะประตูสำนักงานของคุณในขณะที่เขาระเบิดดวงตาเบิกกว้างด้วยความตื่นเต้นและขอให้คุณมากับเขาในเว็บไซต์ที่เขาเพิ่งค้นพบ ระหว่างที่เขาอธิบายว่าเขาคิดว่าเขาเพิ่งหลงทอง ปัญหาอย่างเดียวคือมันถูกฝังอยู่ใต้ดินในถ้ำที่มีหลังคาไม่มั่นคง มันอันตรายเกินไปที่จะไป spelunking ดังนั้นเขาต้องการให้คุณเขียนโปรแกรมหนึ่งในการสำรวจหุ่นยนต์เพื่อเก็บทองให้มากที่สุดเท่าที่จะทำได้ก่อนที่เขาจะดึงมันขึ้นมา นอกจากนี้เขายังกล่าวว่าเขาตรวจสอบถ้ำและพบสัตว์ป่าบางชนิดที่อาจเป็นอันตรายต่อหุ่นยนต์และยังทิ้งอุปกรณ์บางอย่างไว้ที่นั่นซึ่งอาจใช้งานได้ หุ่นยนต์แต่ละตัวมีสองแขนและมีเซ็นเซอร์หลากหลาย เมื่อคุณมาถึงที่เกิดเหตุเขาจะบอกคุณว่าเขาวางแผนที่จะสรรหาคนเข้ารหัสเพิ่มขึ้น ตอนนี้ลงไปที่ nitty-gritty เซ็นเซอร์ส่งข้อมูลไปยังโปรแกรมของคุณเป็นอักขระ ASCII นี่คือรายการความหมายของตัวละครแต่ละตัวและคำอธิบายสำหรับสิ่งที่บอตอาจพบในถ้ำ: Code Name/Description Y Your bot You do things @ Other bots They do other things - Ground This doesn't do things C Centipede These will bite you and leave a poison effect The bite will cost …

8
รักษาระยะห่างของคุณบนวงกลม
สิ่งนี้ขึ้นอยู่กับความท้าทายนี้และความคิดของ Geobits / CarpetPython เพื่อปรับปรุง: รักษาระยะห่างของคุณ! สำหรับความท้าทายนี้ระยะห่างระหว่างตัวเลขสองจำนวนจะถูกวัดบนลูปดังนั้นเช่นระยะห่างระหว่าง 0 ถึง 999 คือ 1 สิ่งนี้ควรป้องกันกลยุทธ์เช่นการเลือกหมายเลขต่ำสุดหรือสูงที่สุดเสมอจากการชนะเกือบทุกครั้ง การเปลี่ยนแปลงอื่น ๆ เท่านั้นคือจำนวนต่ำสุดที่สามารถเลือกได้คือ 0 แทน 1 ฉันจะสรุปได้ที่นี่: เขียนฟังก์ชั่นใน Java, Python หรือ Ruby ที่มีอาร์กิวเมนต์สามตัว: จำนวนรอบที่เล่นจนถึง จำนวนผู้เล่น ตัวเลขที่เลือกในรอบก่อนหน้านี้เป็นอาร์เรย์ของสตริงที่คั่นด้วยช่องว่าง มันควรจะกลับจำนวนเต็มตั้งแต่ 0 ถึง 999 รวม คะแนนสำหรับโปรแกรมในแต่ละรอบคือผลรวมของสแควร์รูทของระยะทางไปยังหมายเลขที่แต่ละโปรแกรมอื่นเลือก โปรแกรมที่มีคะแนนสูงสุดหลังจากชนะ 100 รอบ หนึ่งคำตอบต่อคน โปรแกรมควบคุมอยู่ที่นี่: https://github.com/KSFTmh/src/ ลีดเดอร์บอร์ด NumberOne โดย TheBestOne เป็นผู้ชนะ NumberOne - 9700 NumberOnePlusFourNineNine …

3
เชื่อมต่อบางส่วนที่สังเกตได้ 4
เกม คุณจะได้รับการเล่น (เกือบ) เกมมาตรฐานของการเชื่อมต่อ-4 น่าเสียดายที่มันเป็นเกมการติดต่อทางจดหมายและมีคนวางเทปสีดำลงในแถวที่สองทุก ๆ แถวโดยเริ่มจากด้านล่างเพื่อที่คุณจะได้ไม่เห็นการเคลื่อนไหวของคู่ต่อสู้ในแถวเหล่านี้ การเคลื่อนไหวใด ๆ ภายในคอลัมน์ที่เต็มไปแล้วจะนับว่าผ่านการเทิร์นของคุณและหากเกมใดที่ใช้งานเกินกว่า6 * 7เทิร์นมันจะถูกตัดสินว่าเป็นการเสมอ สเปคท้าทาย โปรแกรมของคุณควรใช้งานในรูปแบบ Python 3 อาร์กิวเมนต์แรกคือ 'มุมมอง' ของกระดานซึ่งแสดงถึงสถานะกระดานที่รู้จักในชื่อ 2D แถวจากล่างขึ้นบนซึ่ง1เป็นการย้ายโดยผู้เล่นคนแรก2การย้ายโดยผู้เล่นคนที่สองและ0ตำแหน่งว่างหรือซ่อน ย้ายโดยฝ่ายตรงข้ามของคุณ อาร์กิวเมนต์ที่สองคือหมายเลขเทิร์นอินที่จัดทำดัชนีจาก0และพาริตีของมันจะบอกคุณว่าคุณเป็นผู้เล่นรายใด อาร์กิวเมนต์สุดท้ายคือสถานะโดยพลการเริ่มต้นNoneที่จุดเริ่มต้นของแต่ละเกมซึ่งคุณสามารถใช้เพื่อรักษาสถานะระหว่างรอบ คุณควรคืนค่า 2 คอลัมน์ของดัชนีคอลัมน์ที่คุณต้องการเล่นและสถานะใหม่ที่จะส่งคืนให้คุณในเทิร์นถัดไป เกณฑ์การให้คะแนน นับเป็นชัยชนะ+1วาดเป็นและสูญเสียเป็น0 -1เป้าหมายของคุณคือเพื่อให้ได้คะแนนสูงสุดโดยเฉลี่ยในทัวร์นาเมนต์ round-robin ฉันจะพยายามวิ่งแข่งให้ได้มากที่สุดเท่าที่จำเป็นเพื่อระบุผู้ชนะที่ชัดเจน กฎระเบียบ ผู้แข่งขันใด ๆ ควรมีบอทที่แข่งขันกันมากที่สุดในแต่ละครั้ง แต่มันก็โอเคที่จะอัพเดทข้อมูลของคุณถ้าคุณทำการปรับปรุง โปรดลอง จำกัด บอตของคุณให้เหลือเวลาคิดประมาณ 1 วินาที การทดสอบ นี่คือซอร์สโค้ดสำหรับคอนโทรลเลอร์พร้อมกับบ็อตตัวอย่างที่ไม่แข่งขันสำหรับการอ้างอิง: import itertools import random def get_strides(board, …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.