การเขียนโปรแกรมปริศนา & รหัสกอล์ฟ

คำถาม & คำตอบสำหรับผู้ชื่นชอบการเขียนโปรแกรมปริศนา

8
ฐาน bijective ทั้งหมดของคุณเป็นของเรา
พื้นหลัง bijective ฐานขเลขที่ขเป็นจำนวนเต็มบวกเป็นสัญกรณ์ตำแหน่ง bijective ที่ทำให้การใช้ขสัญลักษณ์ที่เกี่ยวข้องกับค่านิยมของ1ที่จะข ซึ่งแตกต่างจากคู่ไม่ใช่ bijective ของสัญลักษณ์ไม่มีมีค่าเป็น0 วิธีนี้แต่ละจำนวนเต็มไม่เป็นลบnมีที่ไม่ซ้ำกันเป็นตัวแทนใน bijective ฐานข ตัวเลข bijective ที่เป็นที่นิยม ได้แก่ unary, bijective base 2 (ใช้ในการเข้ารหัสแบบ run-length ของ bzip2 ) และ bijective base 26 (เคยเป็นคอลัมน์จำนวนในสเปรดชีต) คำนิยาม ในความท้าทายนี้เราได้กำหนดสัญลักษณ์ชุดMเป็น 123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz<=> และฟังก์ชั่นฉันจากMไปยังหมายเลขธรรมชาติเช่นว่าฉัน ( '1') = 1, ... , I ( '>') = 64 ได้รับฐานขระหว่าง1และ64 (ทั้งรวม) เรากำหนดว่าแต่ละจำนวนเต็มไม่เป็นลบnสอดคล้องกับสตริงkที่ ... 0ประกอบด้วยสัญลักษณ์ของMเช่นว่าn = …

12
เครื่องมือจับคู่สตริง FizzBuzz-ish
พูดว่าคุณมีสตริงเช่นนี้: abaabbbbbaabba นับจำนวนครั้งที่อักขระที่ระบุปรากฏในสายป้อน แต่ถ้าตัวอักษรที่ปรากฏขึ้นเพียงครั้งเดียวในแถว ตัวอย่างเช่นถ้าตัวอักษรเป็นa, abaabbbbbaabba ^ x x ^ ผลรวมจะเท่ากับ 2 ( aaจะไม่นับเพราะaจะปรากฏสองครั้งติดต่อกัน) สิ่งนี้เกี่ยวข้องกับ FizzBuzz อย่างไร หากอักขระปรากฏขึ้น 3 ครั้งหรือหลายครั้งในแถวหรือ 5 (หรือหลายครั้ง) ในแถวตัวนับจะลดลงแทน ถ้ามันเป็นผลคูณของทั้ง 3 และ 5 ครั้งตัวนับจะยังคงเพิ่มขึ้น โปรดจำไว้ว่าตัวนับจะเพิ่มขึ้นเช่นกันหากอักขระปรากฏขึ้นเพียงครั้งเดียวในแถวเดียวและจะถูกละเว้นหากอักขระนั้นปรากฏเป็นจำนวนครั้งอื่น ๆ ในแถว (นอกเหนือจากสถานการณ์ที่อธิบายข้างต้น) สรุปถ้าสตริงเพื่อการแข่งขันคือa, input counter (explanation) a 1 (single occurence) aaa -1(multiple of 3) aaaaa -1(multiple of 5) aaaaaaaaaaaaaaa 1 …
25 code-golf  string 

21
Monday Mini-Golf # 2: การตัดทอนข้อความขนาดยาว
Monday Mini-Golf:ชุดของความท้าทายรหัสสั้น ๆกอล์ฟโพสต์ (หวังว่า!) ทุกวันจันทร์ แอปพลิเคชั่นเว็บหลายแห่ง (โดยเฉพาะสื่อสังคมออนไลน์) จะตัดข้อความที่มีความยาวโดยอัตโนมัติเพื่อให้พอดีกับการจัดรูปแบบของแอป ในความท้าทายนี้เราจะสร้างอัลกอริทึมเพื่อตัดข้อความโดยอัตโนมัติตามความยาวที่กำหนด ท้าทาย เป้าหมายของการท้าทายคือการเขียนโปรแกรมหรือฟังก์ชั่นที่มีสองข้อโต้แย้ง: Tข้อความที่จะตัดทอน Lความยาวสูงสุดที่จะคืน และส่งคืนTถูกตัดทอนด้วยตรรกะต่อไปนี้: หากความยาวของTน้อยกว่าหรือเท่ากับLไม่จำเป็นต้องตัดทอน ส่งคืนสตริงเดิม ตัดTถึงความยาวL -2 ถ้าเรื่องนี้ไม่มีช่องว่างหรือยัติภังค์กลับTตัดทอนให้ตรงL -3 ...ตัวอักษรตามด้วยจุดไข่ปลา มิฉะนั้นให้ตัดส่วนท้ายของผลลัพธ์จนถึงช่องว่างสุดท้ายหรือเครื่องหมายขีดกลาง เพิ่มจุดไข่ปลา...และกลับผลลัพธ์ รายละเอียด TและLอาจถูกดำเนินการตามลำดับและรูปแบบใดก็ได้ คุณอาจจะคิดว่า 3 < L <2 วันที่ 31 คุณไม่สามารถใช้จุดไข่ปลาแนวนอน U + 2026 …; คุณต้องใช้สามช่วงเวลา อินพุตจะไม่เริ่มต้นด้วยเว้นวรรคหรือยัติภังค์ อินพุตจะไม่มีช่องว่างใด ๆ นอกเหนือจากช่องว่างปกติ (ไม่มีแท็บบรรทัดใหม่ ฯลฯ ) การทดสอบกรณี ปัจจัยการผลิต: "This is some …
25 code-golf  string 

4
เวลาเท่าไร
ฉันชอบที่จะประหยัดเวลาอย่างแท้จริงโดยการใส่นาฬิกาข้อมือสามข้อ ... ปัญหาคือพวกเขาแต่ละคนให้เวลาที่แตกต่างกัน หนึ่งนาฬิกาคือ x นาทีหลังเวลาจริง หนึ่งนาฬิกาคือ x นาทีก่อนเวลาจริง นาฬิกาสุดท้ายแสดงเวลาจริง ปัญหาคือฉันไม่สามารถบอกได้ว่านาฬิกาเรือนไหนมีเวลาที่ถูกต้อง ... จากเวลาที่แสดงในแต่ละนาฬิกาให้กำหนดเวลาจริง หากไม่สามารถระบุเวลาได้ให้พิมพ์ "Look the the sun" อินพุต: การอ่านสามรายการคั่นด้วยอักขระช่องว่างเดียว: H1:M1 H2:M2 H3:M3 ในแต่ละการอ่าน H1, H2, H3 แสดงเวลาที่แสดง (0 <H1, H2, H3 <13) และ M1, M2, M3 แทนนาทีที่แสดง (0 <= M1 , M2, M3 <60) หากจำนวนนาทีน้อยกว่า 10 จะมีการเติม 0 นำหน้าในอินพุต …
25 code-golf  date 

12
เพื่อนของคุณจะนั่งที่ไหน
คุณและเพื่อนบางคนกำลังเล่นโบว์ลิ่ง มีจำนวนเลอร์สNทั้งหมด อย่างไรก็ตามมีเก้าอี้N -1 เท่านั้นที่จะนั่งเข้าได้วิธีแก้ง่าย: ใครก็ตามที่เปิดใช้งานในปัจจุบันไม่ได้รับเก้าอี้ จากนั้นเมื่อถึงคราวพวกเขาก็นั่งลงบนเก้าอี้ของบุคคลที่จะไปต่อ ลองยกตัวอย่าง บอกว่าคุณเป็นชื่อและสี่เพื่อนของคุณจะถูกตั้งชื่อB , C , DและE ผู้เล่นทุกคนเคลื่อนที่ตามลำดับตัวอักษรดังนั้นคุณจะต้องไปก่อน เนื่องจากมีผู้เล่น 5 คนมีเพียง 4 ที่นั่งเท่านั้น เพื่อนของคุณนั่งในสี่ที่นั่งตามลำดับนี้: CEBD คุณไปแล้วและคุณได้รับการนัดหยุดงาน! มันคือเทิร์นถัดไปของBดังนั้นคุณจึงนั่งบนเก้าอี้ของเขา ตอนนี้ดูเหมือนว่านี้: CEAD Bไป Gutterball! จากนั้นเขาก็นั่งอยู่ในCจุด 's และCไปเปิดถัดไป ลูกปัด จากนั้นCนั่งอยู่บนเก้าอี้ของD BEAC และDนั่งในเก้าอี้ของE BDAC และสุดท้ายEนั่งในเก้าอี้ของคุณ BDEC คุณจะสังเกตเห็นว่าตอนนี้ทุกคนที่นั่งเป็นแบบหลอกๆ คุณต้องหาคำตอบหลังจากXหันไปใครจะนั่งที่ไหน อินพุต โปรแกรมของคุณจะต้องรับอินพุตทั้งสองจากผู้ใช้สตริงและตัวเลข ไม่จำเป็นต้องมีพรอมต์ สตริงจะเป็นตัวอักษร 1-51 ตัว (BZ และ az) โดยไม่มีการซ้ำ สิ่งนี้แสดงถึงลำดับที่เพื่อนของคุณเลือกที่จะนั่ง …
25 code-golf  string 

3
Leonhard รักเขาวงกต
พื้นหลัง ลูกชายของฉัน Leonhard (อายุ 4 ขวบ) รักเขาวงกต ฉันไม่รู้ว่าเขารู้จักเขาวงกตจากที่ใด แต่เขาวาดภาพพวกเขาและรู้ดีว่ามันทำงานอย่างไร: เมื่อเร็ว ๆ นี้เขาเริ่มสร้างเกมจากภาพวาดของเขา นี่คือกฎของเขา: สี่เหลี่ยมสีดำหมายถึงจุดเริ่มต้น เบ็ดหมายถึงทางออกของเขาวงกต (นั่นคือสิ่งที่คุณดึงออกมา) คุณสามารถรวบรวมมงกุฎ คุณสามารถรวบรวมนักเก็ตทองคำ (สิ่งรอบ) คุณสามารถเดินทางไปและกลับได้ แต่ไม่มากไปกว่านั้น ลูกศรอาจนำทางคุณไปยังทางออก (ถ้าเขาวาดเขาวงกตให้ฉันแก้พวกเขามักทำให้เข้าใจผิด) รุ่นข้อเขียน: สีน้ำเงิน: จุดเริ่มต้น สีส้ม: ครอบฟัน สีเหลือง: บริเวณที่มีนักเก็ตทองคำ เขียว: hook (exit) สีชมพู: ลูกศร (ส่วนใหญ่ทำให้เข้าใจผิด) งาน บางทีคุณรู้ไหมว่าตอนอายุ 4 ขวบเด็ก ๆ เริ่มบอกลูกหมูและบางครั้งเขาก็ไม่ปฏิบัติตามกฎของตัวเองโดยเฉพาะถ้าเขารู้ว่าเขาไม่สามารถไปถึงจุดสิ้นสุดของเขาวงกตได้อีก นั่นคือสิ่งที่คุณเข้ามาเล่น: เนื่องจากฉันกำลังมองหาเกมสำหรับเด็กอยู่แล้วคุณเปลี่ยนความคิดของเขาเป็นเกมที่ไม่สามารถโกงได้ เราต้องการคำจำกัดความเพิ่มเติมที่ฉันพูดได้: สนามเด็กเล่นเป็นรูปสี่เหลี่ยมผืนผ้าn* mของสี่เหลี่ยมที่มีขนาดเท่ากัน สี่เหลี่ยมจัตุรัสมี 0 ถึง …

5
ความขัดแย้งการจัดตารางแห่งชาติ
(ฉันตั้งใจจะโพสต์สิ่งนี้ในขณะที่1542: ความขัดแย้งของการกำหนดเวลา ยังคงเป็น xkcd ปัจจุบัน แต่ฉันมีความขัดแย้งของการตั้งเวลา) อินพุต การป้อนข้อมูลจะเป็นรายการ3nองค์ประกอบซึ่งเป็นตัวแทนของnเหตุการณ์ องค์ประกอบแรกในแต่ละกลุ่มของ 3 จะเป็นชื่อของเหตุการณ์ ครั้งที่สองและสามคือเวลาเริ่มต้นและสิ้นสุดตามลำดับ ตัวอย่างเช่น: foo 12 34 bar 56 78 แสดงถึงเหตุการณ์fooที่เริ่มต้นที่ "เวลา 12" (เวลาถูกแทนด้วยจำนวนเต็มคุณสามารถคิดว่ามันเป็นนาทีที่ผ่านเที่ยงคืน) และสิ้นสุดที่ 34 และเหตุการณ์ที่สองbarที่เริ่มต้นที่ 56 และสิ้นสุดที่ 78 ชื่อของเหตุการณ์จะประกอบด้วยตัวอักษรและตัวเลขเท่านั้นและเวลาจะเป็นจำนวนเต็มเสมอ≥ 0 และ <1440 เวลาสิ้นสุดจะต้องมากกว่า 1 เวลาเริ่มต้นอย่างน้อย 1 เสมอ พวกเขาจะไม่รับประกันว่าจะเรียงในทางใดทางหนึ่ง หากคุณต้องการคุณอาจใช้สิ่งนี้เป็นสตริงที่คั่นด้วยช่องว่างเดียว; ไม่เช่นนั้นควรใช้เป็นอาร์เรย์รายการเวกเตอร์หรือภาษาที่เทียบเท่าของคุณ เอาท์พุต เอาต์พุตควรเป็นรายการชื่อเหตุการณ์ที่คั่นด้วยช่องว่าง กฎสำหรับชื่อเหตุการณ์ที่จะส่งออกมีดังนี้: ไม่มีเหตุการณ์ที่คุณส่งออกอาจขัดแย้งซึ่งกันและกัน ตัวอย่างเช่นด้วยอินพุตa 0 10 b 5 …
25 code-golf 

2
การเรียงลำดับบางส่วนของรูปแบบ Regex
สำหรับจุดประสงค์ของการท้าทายนี้เราบอกว่ารูปแบบ regex จับคู่กับสตริงหากสตริงทั้งหมดถูกจับคู่กับรูปแบบไม่ใช่แค่สตริงย่อย ด้วยรูปแบบ regex สองรูปแบบ A และ Bเราบอกว่า A นั้นมีความเชี่ยวชาญมากกว่า B หากสตริงทุกอันที่จับคู่โดย A นั้นถูกจับคู่โดยBด้วย แต่ไม่ใช่วิธีอื่น ๆ เราบอกว่า เป็นเทียบเท่าเพื่อ B ถ้ารูปแบบทั้งตรงกับชุดเดียวกันของสตริง หากรูปแบบไม่เป็นความเชี่ยวชาญมากขึ้นกว่าที่อื่น ๆ หรือพวกเขาเทียบเท่าเราบอกว่า และ B เป็นที่เปรียบมิได้ ตัวอย่างเช่นรูปแบบHello, .*!มีความเชี่ยวชาญมากกว่า.*, .*!; รูปแบบ(Hello|Goodbye), World!และHello, World!|Goodbye, World!เทียบเท่า; และรูปแบบHello, .*!และ.*, World!หาที่เปรียบมิได้ ความสัมพันธ์ "พิเศษกว่า" กำหนดลำดับบางส่วนที่เข้มงวดในชุดของรูปแบบ regex โดยเฉพาะอย่างยิ่งสำหรับรูปแบบ A และ Bทั้งหมดหนึ่งในสิ่งต่อไปนี้เป็นจริง: A มีความเชี่ยวชาญมากกว่า B ( A …

16
ให้ชื่อของดาวเคราะห์สองดวงให้ระยะทาง
การใช้ตารางต่อไปนี้ ( ต้นฉบับ ) เขียนโค้ดบางอย่างที่ใช้ชื่อของดาวเคราะห์สองดวงและส่งคืนระยะห่างระหว่างพวกมัน: +-------------------+---------------+ | Planets | Distance (km) | +-------------------+---------------+ | Mercury -> Venus | 50290000 | | Venus -> Earth | 41400000 | | Earth -> Mars | 78340000 | | Mars -> Jupiter | 550390000 | | Jupiter -> Saturn | 646270000 | | Saturn …

21
วาดกระดานหมากรุก ASCII
สรุป แรงบันดาลใจจากความนิยมล่าสุดของความท้าทายงานศิลปะ ASCII จุดประสงค์ของความท้าทายนี้คือการวาดกระดานหมากรุก ASCII เช่นเดียวกับที่เล่นหมากรุกได้ เขียนโปรแกรมที่ใช้จำนวนเต็มบวกnเป็นอาร์กิวเมนต์ในstdinหรือเป็นอินพุตของผู้ใช้และส่งออกกระดานหมากรุกที่มีnx nกำลังสองพร้อมกับเส้นขอบที่มีความหนา 1 อักขระ แต่ละสแควร์ควรเป็นอักขระ 2x2 สี่เหลี่ยมควรเป็นไปตามลวดลายสลับขาว - ดำ (สีขาวก่อนตามมุมบนซ้าย) ของกระดานหมากรุก สี่เหลี่ยมสีขาวควรทำจากอักขระเว้นวรรค ( ) และสี่เหลี่ยมสีดำควรทำจาก#อักขระปอนด์ ( ) เส้นขอบควรทำจากเครื่องหมายขีดกลาง ( -) พร้อมเครื่องหมายบวก ( +) ที่ขอบหรือจุดตั้งฉากของสี่เหลี่ยม อินพุต จำนวนเต็มบวกในการแสดงจำนวนของสแควร์ (มิติในสแควร์) เพื่อวาดในกระดานหมากรุกโดยแต่ละตารางจะมีตัวอักษร 2x2 ตัวอย่างผลลัพธ์ n=2 +--+--+ | |##| | |##| +--+--+ |##| | |##| | +--+--+ n=3 +--+--+--+ …

3
กำลังมองหาโปรแกรมในกระดานเกรงกลัวขนาดใหญ่
อักขระแต่ละตัวในข้อความขนาด 64 x 64 บล็อกนี้ถูกเลือกแบบสุ่มและสม่ำเสมอจากอักขระ ASCII ที่พิมพ์ได้ 95 ตัว /rq$:Zy5*g'$DeGXX2o8y "{@Cg:FR9qih}xh >5$DsF1Fs5Ao~smFp;.RJbV )U c4\(|Sx*V$10G9xO:NjHKasem%,\9[pPm@&kTaN~HC[;9`lgqlAH(7dt0a-5}LJ[ &sifw9V-.PLRoD~F'dJYA^Q)L#h>$9h!B4b&ceKp8~HndzDm#1/ySydrf5T8[Y%4 U9>HLQ74Qf[^V9tpWrKFcFxZJ::4?z/o]3u,V[B&hB9lFYA0:rW#yql5z9.d*D}U :M2*O9'7_HMGw_=%@hR>O+(@Dr6MIt(=/{-{4lia0Vmws32wr(fnTmT%HSo&7!uz \KZWG&KnXh+6E+Q>%pV(<Bnm-d+p~y~]Ta"aw9)]0A_AHz\tP3&}1R^/yPPSgN?8 ".7|Uj)S7-k[`yeLO~P2a?z3wiS(R-\k'?z(pVm;;D^k/q84?&7:,E*9$UQ"UbBJ ME]&*R ,*7PDF4Tw*-;De{YeP_al.CJcJX`@V_y+>^<h{L[^Y"!RxjN^lyA_/Y=( #C>Zo#Sl;UUD5ChIj'L@rkELk%S*]a$87j\\n;}796m/\NPL>8d-T-hR!7ftw ?A tV5"E309bAv$jhE6\'8f?VGlBb?z#V;F((3'|}$tfpiNB>"*mxc,X1s:/%x*JQAL rxYXUJsd?X}^yc|'16539vd=psU'>|y/!$-TRamKcJk^2-aD35h7CcaRNue"8#{; @yUq?*(72I8@I)So+]RwtKy:mLhjG/f#:U<TXml<PtX*+,ngfZt75-q*gSsyI2tS |*M*;yz6u2(LZ>W`bth-7G~>|dh'pm}]@"#Oq9%o\W)b,gh%b1O]4F:EGb7ERI=@ ehMo69slKw=S@<j*Q4sfd\1')#)V&yaPF%%ZG6VK\_-$Cab,nrlW"O(<tu&xU=I& |[g4k2L;FD)=yX0SsE-|vI(mDOccuU(+m\wxgrJxi8ZP[uD)L.!K@]%@q`!pk8Yx ?PZaS3;x,7nK~IHlrCGy~xq:@K/CJ1J^oeac&Tv?6[H>>0lu?(/bh@6J^@S?IY-| @tdN$K=Ci2;_0Du;L2OO'en|]<_`nX5p3Bes9`8{}fRCV$X&aoQGYS'$j%r<2709 UwETsAo^d!aUZ0vN5,Yq\n%JAIm}%O88FAJK^Jt&=jM\Q1^+^|X8\._"l%hlF+yH +c^FBFxTGz|f|#kElQs)mS64-3Z\An]|[rQo"OQ+ IP"ARdJ}/OYFQF_/{B 73mU UPvxNByN[2TT,XgRZ_LwolUVWuR)DjYI7j#mmA8m?&Y}}[_h8@Y-R*,#=1\D*&@* ePW.w{@z3moe3Vztd,>?*~ZQUvn8$+xw$$f92D*kPZ":;lcTr3m&{*?j$FgZK|cU IAd'0C{<4b}NuhX1B#gmk'oF4+(@fzP^T?hF/#]g^y rb5][)X-d4Q't~1]HE"tZ p2Z,%H0$EWF/%|UQm?&]E~=v;9YwxrSs%}df`[ `SfXMJWt86UY1duGAAKkFSrH! oUyB[soS!N%XYwX]%n K^}CcTE?~.,8`C&l)Jjjp5|z))!o/ "G)sj,{OETsi:KE 4E,':a=,T~YlxdF^<\$fE|f:_-RG}7=m%g\-9a*X]`n<P$D+q7O`+$P&!\"NUs7n hL@0s 7i^Xp\._4$lZIB9Ql AXX_00K=<hp%55KSO6yWH~cGe%|(p_WzlhPUbH{? o5b4pi(,]&&jB\hGa:\DQbrYc,n|,b)_E{n~i~+JSxn?%/qJVm|B 8"Jf||L.|M- …

7
เครื่องมือตรวจสอบไวยากรณ์ที่คล้ายกับ Pyth
Pythเป็นภาษากอล์ฟที่ใช้ Python มันใช้สัญกรณ์คำนำหน้ากับแต่ละคำสั่งที่มี arity ที่แตกต่างกัน (จำนวนอาร์กิวเมนต์ที่ยอมรับ) งานของคุณคือการเขียนตัวตรวจสอบไวยากรณ์สำหรับภาษา Pyth ที่เหมือนกัน (ไม่มีอยู่) Pith ไวยากรณ์ของ Pith Pith มีเพียง 8 คำสั่งถ่านเดียว: 01234()" 01234แต่ละอันมี arity ของจำนวนที่สอดคล้องกันและด้วยเหตุนี้จึงคาดว่าข้อโต้แย้งมากมายหลังจากนั้น ตัวอย่างเช่น, 400010 เป็นที่ถูกต้องโปรแกรมแก่นเพราะ4มีผู้ติดตามสี่ข้อโต้แย้ง0 0 0และ10สุดท้ายซึ่งเป็นตามด้วยอาร์กิวเมนต์เดียว1 0เพื่อให้เห็นภาพนี้เราสามารถดูต้นไม้ต่อไปนี้: R | 4 | ------------- | | | | 0 0 0 1 | 0 โดยที่Rโหนดรูท อีกทางเลือกหนึ่งในการคิดเกี่ยวกับสิ่งนี้คือแต่ละหมายเลขหมายถึงจำนวนเด็กที่โหนดที่เกี่ยวข้องมีอยู่ในต้นไม้ด้านบน นี่คือโปรแกรม Pith ที่ถูกต้องอีกตัวหนึ่งที่มีคำสั่งพื้นฐานมากกว่าหนึ่งคำสั่ง: 210010 สอดคล้องกับ R …

11
เคล็ดลับสำหรับการเล่นกอล์ฟในโก
คุณมีเคล็ดลับทั่วไปสำหรับการเล่นกอล์ฟในโก ฉันยังใหม่กับ Code Golfing และกำลังมองหาแนวคิดที่สามารถนำไปใช้กับปัญหาของรหัสกอล์ฟโดยทั่วไปซึ่งอย่างน้อยค่อนข้างเฉพาะกับ Go โปรดเก็บไว้หนึ่งเคล็ดลับต่อคำตอบ
25 code-golf  tips 

1
ค้นหาเส้นทางระหว่างสองบทความใน Wikipedia
บทนำ เมื่อไม่นานมานี้ฉันเล่นกับเพื่อนหลายคนและเราเบื่อและไม่มีอะไรทำเราจึง "ประดิษฐ์" เกม "(บางคนในคอมเม้นต์ชี้ให้เห็นว่าเกมนี้เล่นออนไลน์ได้และเป็นที่นิยมมาก ไม่ได้ประดิษฐ์มันแม้ว่าฉันไม่เคยเห็นมาก่อน) เหตุผลที่ฉันใส่คำว่า "เกม" ไว้ในเครื่องหมายคำพูดเพราะมันไม่ใช่เกมคอมพิวเตอร์จริง แต่เล่นใน Wikipedia เล่นง่ายจริงๆ: มีคนเลือกบทความ Wikipedia เป็นเป้าหมาย สมมุติโค้ดกอล์ฟสำหรับตัวอย่างนี้ ผู้เล่นทุกคนแล้วต้องเริ่มต้นจากบทความแบบสุ่ม (โดยการกดสุ่มบทความในแถบด้านข้างหรือไปนี้ URL) และต้องได้รับการ "เป้าหมาย" เป็นอย่างรวดเร็วเป็นไปได้โดยใช้บทความเชื่อมโยงเพียงของบทความที่คุณมีในขณะนี้ที่ กฎรวมถึง: ฟังก์ชั่นการค้นหาไม่ได้รับอนุญาต (ชัด) คุณสามารถคลิกลิงค์ในข้อความหลักของบทความ (เฉพาะข้อความทั้งหมดภายใน<div id="bodyContent">) หากหน้าแบบสุ่มของคุณหรือหน้าอื่น ๆ ที่คุณพบไม่มีลิงก์ที่ถูกต้อง (ลิงก์ที่ตายแล้ว, ลูป, ฯลฯ ) หรือไม่มีลิงก์ใด ๆ เลยที่คุณสามารถกลิ้งได้ ความท้าทาย นี่คือที่ที่คุณเข้ามา: น่าเสียดายที่เกมนี้แย่มาก แต่ฉันก็เป็นสิบแปดมงกุฎสกปรกด้วย ดังนั้นฉันต้องการให้คุณใช้บ็อตนี้ให้ฉัน ฉันยังเป็นโปรแกรมเมอร์ด้วยดังนั้นฮาร์ดดิสก์ของฉันจึงเต็มไปด้วยสิ่งต่าง ๆ เช่นรหัสห้องสมุดและสิ่งเหล่านี้และฉันมีหน่วยความจำเพียงไม่กี่ไบต์เท่านั้น ดังนั้นความท้าทายนี้คือ Code Golf คำตอบที่มีจำนวนไบต์น้อยที่สุดชนะ …
25 code-golf 

30
เปรียบเทียบตัวเลขสองตัว
ท้าทาย ได้รับสองจำนวนเต็มAและBเป็น input คุณต้องเขียนโปรแกรมที่เอาท์พุทถ้าA>B, หรือA==BA<B จำนวนเต็มจะอยู่ในช่วงที่เหมาะสมซึ่งสนับสนุนโดยภาษาของคุณซึ่งมีค่าอย่างน้อย 256 ค่า โปรแกรมของคุณอาจเป็นโปรแกรมเต็มรูปแบบหรือฟังก์ชั่นโดยรับอินพุตผ่าน STDIN หรืออาร์กิวเมนต์ของฟังก์ชัน เอาท์พุท ถ้าA>Bเอาท์พุท A is greater than B ถ้าA==Bเอาท์พุท A is equal to B ถ้าA<Bเอาท์พุท A is less than B โดยที่คุณแทนที่AและBสำหรับค่าจำนวนเต็ม การชนะ โปรแกรมที่สั้นที่สุดในหน่วยไบต์ชนะ ลีดเดอร์บอร์ด var QUESTION_ID=55693,OVERRIDE_USER=8478;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"http://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var …
25 code-golf  number 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.