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

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

11
สร้างอวตาร“ GitHub”
พื้นหลัง / คำอธิบาย หมายเหตุ: เนื่องจาก @HelkaHomba ชี้ให้เห็นตัวตนที่แท้จริงของ GitHub นั้นไม่ใช่การสุ่ม แต่ขึ้นอยู่กับการแฮชของชื่อผู้ใช้ avatar GitHub เริ่มต้นคือภาพขนาด 5x5 พิกเซล สีจะถูกเลือกแบบสุ่มและจากนั้นจะมีการเติมพิกเซลแบบสุ่มในด้านหนึ่ง (ขวาหรือซ้ายขนาด 2x5) โดยใช้สีนั้น จากนั้นด้านนั้นจะถูกคัดลอกและพลิกไปอีกด้านหนึ่งข้ามแกน y พิกเซลที่เหลืออยู่ซึ่งไม่ได้กรอกคือ # F0F0F0 หรือ rgb (240,240,240) พิกเซลของคอลัมน์กลาง (ขนาด 1x5) จะถูกป้อนแบบสุ่มโดยใช้สีเดียวกันกับก่อนหน้านี้ เอาท์พุต หมายเหตุ: สำหรับความท้าทายนี้เราจะไม่สนใจพื้นที่ที่ล้อมรอบรูปประจำตัวของ GitHub โปรแกรมควรส่งไฟล์ภาพขนาด 5x5 พิกเซล ดูhttp://meta.codegolf.stackexchange.com/a/9095/42499สำหรับข้อมูลเฉพาะ ตัวอย่าง หมายเหตุ: สิ่งเหล่านี้ถูกย่อขยายจาก 5x5 เพื่อให้คุณเห็นได้ โชคดี!

30
หมายเลขนี้เป็นฐานอะไร
นี่คือความท้าทายที่ง่ายดี: ได้รับสตริงที่แสดงตัวเลขที่อยู่ในฐานที่ไม่รู้จักการตรวจสอบฐานที่ต่ำที่สุดว่าจำนวนอาจจะอยู่ใน. 0-9, a-zสตริงจะมีเฉพาะ หากคุณต้องการคุณอาจเลือกที่จะใช้ตัวอักษรตัวพิมพ์ใหญ่แทนตัวพิมพ์เล็ก แต่โปรดระบุสิ่งนี้ คุณต้องส่งออกฐานที่ต่ำที่สุดเท่าที่เป็นไปได้นี้ในรูปทศนิยม นี่คือตัวอย่างที่เป็นรูปธรรมมากขึ้น หากสตริงอินพุตคือ "01234" เป็นไปไม่ได้ที่ตัวเลขนี้จะเป็นเลขฐานสองเนื่องจาก 2, 3 และ 4 ไม่ได้ถูกกำหนดไว้ทั้งหมดในไบนารี ในทำนองเดียวกันตัวเลขนี้ไม่สามารถอยู่ในฐาน 3 หรือฐาน 4 ดังนั้นหมายเลขนี้จะต้องอยู่ในฐาน 5 หรือฐานที่สูงกว่าดังนั้นคุณควรส่งออก '5' รหัสของคุณจะต้องใช้กับฐานใดก็ได้ระหว่างฐาน 1 (แยกจากกันทั้งหมด '0's) และฐาน 36 (' 0-9 'และ' a-z ') คุณสามารถรับอินพุตและให้ผลลัพธ์ในรูปแบบที่เหมาะสม อนุญาตให้สร้างการแปลงฐานได้ ตามปกติจะใช้ช่องโหว่มาตรฐานและคำตอบสั้น ๆ เป็นไบต์เป็นผู้ชนะ! ทดสอบ IO: #Input #Output 00000 --> 1 123456 --> 7 …

9
ระหว่างเส้น
ในขณะที่ดูเดิลไปรอบ ๆ บนกระดาษสี่เหลี่ยมจตุรัสในวันอื่น ๆ ฉันพบว่ามีฟอนต์พื้นที่ว่างด้านบนเป็นตัวเลข ในกรณีที่คุณไม่ได้เห็นมันยังช่องว่างระหว่างรูปทรงดังกล่าวข้างต้นให้ผลผลิตอัตราส่วนทองคำ1.618033988749 ในการท้าทายนี้งานของคุณคือนำตัวเลขเป็นอินพุตและแสดงตามตัวอย่างที่แสดงด้านบน นี่คือวิธีการสร้างสิ่งเหล่านี้ เส้นทั้งหมดจะอยู่ในกริดปกติเพื่อให้แต่ละหลักประกอบด้วยเซลล์กริดจำนวนน้อย นี่คือรูปทรงของตัวเลข 10 หลัก (เราจะละเว้นจุดทศนิยมสำหรับความท้าทายนี้): ใช่7แตกต่างจากตัวอย่างอัตราส่วนทองคำที่ด้านบน ฉันคิดว่าเป็นอย่างนั้น เราจะไปกับอันนี้ ขอให้สังเกตว่าแต่ละหลักสูงห้าเซลล์และสามเซลล์กว้าง ในการแสดงตัวเลขคุณสามารถจินตนาการถึงการวางตัวเลขทั้งหมดไว้ข้างๆกันเช่นมีคอลัมน์ว่างหนึ่งคอลัมน์ระหว่างตัวเลขแต่ละคู่ ตัวอย่างเช่นรับ319อินพุตเราจะเขียน: โปรดสังเกตว่าเราเพิ่มหนึ่งคอลัมน์ที่ว่างนำหน้าและต่อท้าย ตอนนี้เรากลับเซลล์: ผลลัพธ์ควรเป็นขอบเขตของรูปหลายเหลี่ยมที่เป็นผลลัพธ์: แน่นอนคุณอาจสร้างผลลัพธ์ด้วยวิธีอื่นตราบใดที่เอาต์พุตที่แสดงนั้นมีลักษณะเหมือนกัน อินพุต คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่นรับอินพุตผ่าน STDIN (หรือทางเลือกที่ใกล้เคียงที่สุด) อาร์กิวเมนต์บรรทัดคำสั่งหรืออาร์กิวเมนต์ฟังก์ชันเป็นสตริงหรือรายการตัวเลข (คุณไม่สามารถรับตัวเลขได้เนื่องจากจะไม่อนุญาตให้คุณสนับสนุนศูนย์นำหน้า) คุณอาจคิดว่าจะไม่มีตัวเลข 16 หลักในอินพุต เอาท์พุต ผลลัพธ์อาจปรากฏบนหน้าจอหรือเขียนลงไฟล์ในรูปแบบภาพทั่วไป คุณสามารถใช้กราฟิกแรสเตอร์และเวคเตอร์ ไม่ว่าในกรณีใดอัตราส่วนของเซลล์ของกริดพื้นฐานต้องเป็น 1 (นั่นคือเซลล์ควรเป็นกำลังสอง) ในกรณีของกราฟิกแรสเตอร์แต่ละเซลล์ควรครอบคลุมอย่างน้อย 20 คูณ 20 พิกเซล บรรทัดต้องไม่กว้างกว่า 10% ของขนาดเซลล์ ฉันยินดีที่จะให้ระยะห่างหนึ่งหรือสองพิกเซลเนื่องจากนามแฝงที่นี่ เส้นและพื้นหลังสามารถเป็นสองสีที่แตกต่างอย่างชัดเจน แต่รูปร่างที่สร้างโดยเส้นจะต้องไม่เติม จะต้องไม่มีช่องว่างในแต่ละวงปิด …

30
มันเป็นคำที่เป็นหลุมเป็นบ่อหรือไม่?
(แรงบันดาลใจจากความท้าทายนี้ในเรื่อง Puzzling - สปอยเลอร์สำหรับปริศนานั้นอยู่ด้านล่างดังนั้นหยุดอ่านที่นี่ถ้าคุณต้องการแก้ปริศนานั้นด้วยตัวคุณเอง!) หากตัวอักษรในคำเกิดขึ้นตามตัวอักษรช้ากว่าตัวอักษรก่อนหน้าในคำนั้นเราเรียกว่าการเพิ่มขึ้นระหว่างตัวอักษรสองตัว มิฉะนั้นรวมทั้งถ้าหากมันเป็นตัวอักษรเดียวกันก็เรียกว่าฤดูใบไม้ร่วง ยกตัวอย่างเช่นคำว่าACEมีสองเพิ่มขึ้น ( AไปCและCไปE) และไม่มีการตกอยู่ในขณะที่THEมีสองน้ำตก ( TไปHและHไปE) และไม่มีการเพิ่มขึ้น เราเรียกคำว่าBumpyหากลำดับของการเพิ่มขึ้นและตกสลับกัน ตัวอย่างเช่นBUMPเพิ่มขึ้น ( Bเป็นU) ตก ( Uเป็นM) เพิ่มขึ้น ( Mเป็นP) โปรดทราบว่าลำดับแรกไม่จำเป็นต้องเพิ่มขึ้น - BALDไปตกเพิ่มขึ้นและยังเป็นหลุมเป็นบ่อ ความท้าทาย ได้รับคำเอาท์พุทไม่ว่าจะเป็น Bumpy หรือไม่ อินพุต คำ (ไม่จำเป็นต้องเป็นคำพจนานุกรม) ประกอบด้วยอักษร ASCII ( [A-Z]หรือ[a-z]) ตัวอักษรในรูปแบบที่เหมาะสมใด ๆ ตัวเลือกของคุณหากอินพุตเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กทั้งหมด แต่ต้องสอดคล้องกัน คำจะมีความยาวอย่างน้อย 3 ตัวอักษร เอาท์พุต ค่าความจริง / ความเท็จไม่ว่าจะเป็นคำที่ป้อนเป็น Bumpy (ความจริง) …

8
เรียงลำดับ James Bond เหล่านี้
บทนำ คุณปู่ของฉันเป็นแฟนตัวยงของเจมส์บอนด์ แต่เขาก็ไม่แน่ใจในการจัดอันดับนักแสดงที่เขาชื่นชอบอยู่เสมอ เช่นนี้เขามักจะทำรายการซึ่งเป็นงานจำนวนมาก เขาขอให้ฉันสร้างโปรแกรมที่จะทำให้ชีวิตของเขาง่ายขึ้น แต่ฉันไม่มีเวลาสำหรับเรื่องนั้นฉันต้องทำงาน! ดังนั้นฉันจะไว้ใจพวกคุณ ท้าทาย ความท้าทายนั้นง่าย อินพุตจะประกอบด้วยรายการในรูปแบบต่อไปนี้: <number> <space> <actor's name> <newline> งานของคุณคือการจัดเรียงตามหมายเลขที่จุดเริ่มต้นของบรรทัดเริ่มจากสุดท้ายและลงท้ายด้วยบรรทัดแรก ควรลบหมายเลขทั้งหมด อย่างไรก็ตามบางครั้งคุณปู่ของฉันทำผิดพลาด ดังนั้นคุณจะต้องตรวจสอบข้อมูล หากหนึ่งในรายชื่อไม่ได้อ้างถึงนักแสดงคนใดคนหนึ่งที่เล่นบอร์นคุณต้องยกเลิกมัน ในกรณีของการทำซ้ำควรลบซ้ำและชื่อควรรักษาน้ำหนักต่ำสุดที่เกี่ยวข้อง (ตัวอย่าง # 3) ไม่มีการ จำกัด จำนวนบรรทัดที่อาจมี ผลลัพธ์จะต้องเป็นรายการของการเรียงลำดับบางอย่างไม่ว่าจะเป็นอาร์เรย์สตริงที่คั่นด้วยเครื่องหมายจุลภาคเพียงแค่ค่าคั่นด้วยช่องว่างหรืออย่างอื่นทั้งหมดเช่น Pierce Brosnan, Sean Connery, David Niven ขึ้นบรรทัดใหม่หรือช่องว่างที่ได้รับอนุญาต ตัวอย่างอินพุตและเอาต์พุต การป้อนข้อมูล: 1 ฌอนคอนเนอรี่ 2 เอ็มม่าวัตสัน 5 ทิโมธีดัลตัน 4 โรเจอร์มัวร์ 3 Daniel Craig เอาท์พุท: Timothy …

18
ลำแสงจะชนหรือไม่
<>^vหน่อเลเซอร์ลำแสงตรงในหนึ่งในสี่ทิศทางมุมฉากแสดงโดย ตรวจสอบว่ามันจะถึงเป้าหมายOในตารางสี่เหลี่ยม แต่ละรายการจะถูกตี (True): ..... ...O. ..... ...^. ..... >O. ... v.... O.... ........... ........... O.........< ........... สิ่งเหล่านี้จะพลาด (เท็จ): ...... ...... .^..O. ...... .....> O..... ...... ...... .O. ... .v. .....<. ..O.... อินพุต:ตารางสี่เหลี่ยมจัตุรัส.ขนาดอย่างน้อย 2x2 โดยมีเป้าหมายOเดียวและเลเซอร์หนึ่งอันที่เป็นหนึ่งใน<>^vนั้น บรรทัดสามารถเป็นรายการของสตริงอาร์เรย์ 2 มิติหรือรายการของอักขระที่ซ้อนกันหรือสตริงที่คั่นด้วยการขึ้นบรรทัดใหม่เดี่ยวด้วยการขึ้นบรรทัดใหม่ที่เป็นทางเลือก เอาท์พุท : ค่าความจริงที่สอดคล้องกันหากลำแสงเลเซอร์ไปถึงเป้าหมายและค่าที่ผิดพลาดหากมันหายไป ฉันจะพิจารณาการส่งที่ไม่ใช้นิพจน์ทั่วไป (หรือการจับคู่สตริงตามรูปแบบในตัว) เป็นหมวดหมู่แยก หากคุณใส่(no regex)ชื่อภาษาคำตอบของคุณจะปรากฏแยกต่างหากในกระดานแต้มนำ แสดงตัวอย่างโค้ด var QUESTION_ID=80196,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/80196/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function …

30
คืนค่าจำนวนเต็มด้วยผลบวกสี่เหลี่ยมจัตุรัส
บทนำและเครดิต เราทุกคนรู้และชื่นชอบกฎที่ยอดเยี่ยมของเราในการทดสอบว่าจำนวนนั้นหารด้วย 11 หรือ 3 ซึ่งเป็นเพียงผลรวมที่ฉลาดกว่าตัวเลขของตัวเลข ตอนนี้ความท้าทายนี้จะนำคุณไปสู่ระดับใหม่โดยกำหนดให้คุณคำนวณผลรวมของตัวเลขแล้วตรวจสอบว่าผลลัพธ์เป็นสี่เหลี่ยมจัตุรัสที่สมบูรณ์แบบหรือไม่ซึ่งการดำเนินการใด ๆ ที่ทำได้สั้นมาก เนื่องจากสถานที่แห่งนี้มองเห็นได้ยากเมื่อมองที่ตัวเลขเราต้องการให้ทำรายการทั้งหมดเพื่อให้สามารถบันทึกงานของมนุษย์ได้ นี่คือความท้าทายของคุณตอนนี้! นี่เป็นงานที่ได้รับมอบหมายในหลักสูตรการเขียนโปรแกรมการทำงานในมหาวิทยาลัยของฉัน ตอนนี้งานนี้ปิดและมีการพูดคุยกันในชั้นเรียนและฉันได้รับอนุญาตจากอาจารย์ให้โพสต์ไว้ที่นี่ (ฉันถามอย่างชัดเจน) สเปค อินพุต ข้อมูลที่คุณป้อนเป็นรายการจำนวนเต็มที่ไม่เป็นลบในรูปแบบ I / O มาตรฐานใด ๆ คุณสามารถเลือกรูปแบบรายการตามที่ภาษาของคุณต้องการ เอาท์พุต เอาต์พุตคือรายการของจำนวนเต็มในรูปแบบ I / O มาตรฐานใด ๆ จะทำอย่างไร? กรองจำนวนเต็มทุกตัวออกจากรายการอินพุตที่ผลรวมของตัวเลขไม่ใช่ aa square (ของจำนวนเต็ม) ลำดับขององค์ประกอบอาจไม่สามารถเปลี่ยนแปลงได้เช่นหากคุณทำให้[1,5,9]คุณไม่ได้รับผลตอบแทน[9,1] กรณีมุมที่อาจเกิดขึ้น 0 เป็นจำนวนเต็มไม่เป็นลบและทำให้อินพุตที่ถูกต้องและ 0 ยังเป็นรูทจำนวนเต็มที่ถูกต้องเช่น 0 นับเป็นสแควร์จำนวนเต็ม รายการที่ว่างเปล่าคืออินพุตและเอาต์พุตที่ถูกต้องเช่นกัน ใครชนะ? นี่คือ code-golf ดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ! ใช้กฎมาตรฐานแน่นอน กรณีทดสอบ …
31 code-golf  math 

27
รหัสผ่านเป็นสตริง
ความท้าทายของคุณคือรหัสผ่านสตริง! รหัสผ่านคืออะไรคุณถาม? ใช้สตริงเป็นอินพุต สายนี้จะประกอบด้วยตัวอักษรตัวพิมพ์ใหญ่ตัวอักษรตัวพิมพ์เล็กตัวเลขและช่องว่าง คุณต้องแทนที่ช่องว่างทั้งหมดด้วยขีดล่างและย้ายตัวเลขทั้งหมดไปยังจุดสิ้นสุดของสตริงตามลำดับที่ปรากฏจากซ้ายไปขวา จากนั้นสำหรับตัวอักษรทุกตัวในสตริงสุ่มเปลี่ยนเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก ตัวอย่าง (กรณีของตัวละครควรแตกต่างกันทุกครั้ง): Input Hello world Output HElLo_wORld Input pa55 w0rd Output pA_Wrd550 Input 14 35 Output _1435 Input 0971 Output 0971 Input [space] Output _ รหัสที่สั้นที่สุดเป็นไบต์ชนะ! ใครก็ตามที่ถามเกี่ยวกับความปลอดภัยของข้อมูล SE หากนี่เป็นอัลกอริทึมการแปลงแป้นพิมพ์ที่ดีจะชนะ! - ไม่ต้องกังวลกับผู้ซ้อนทางทิศตะวันออกฉันล้อเล่น

30
ค่อยๆเปลี่ยนสตริงเป็นอื่น
ความท้าทาย รับสองสาย / อาร์เรย์ของสายออกสายแรกช้าลงและขยายกลับเข้าไปในสายที่สอง คุณสามารถสันนิษฐานได้ว่าสตริงจะเริ่มต้นด้วยตัวละครเดียวกันเสมอ ตัวอย่าง Input: "Test", "Testing" Output: Test Tes Te T Te Tes Test Testi Testin Testing ก่อนอื่นคุณเอาท์พุทคำแรก: Test จากนั้นคุณจะลบตัวอักษรหนึ่งตัวออกไปเรื่อย ๆ จนกว่าสตริงจะยาวหนึ่งตัว: Tes Te T จากนั้นให้เพิ่มตัวอักษรหนึ่งคำที่สองต่อไปจนกว่าจะเสร็จ: Te Tes Test Testi Testin Testing (ถ้าทั้งสองสายยาวหนึ่งตัวอักษรจากนั้นก็ออกหนึ่งครั้ง) กรณีทดสอบ "Hello!", "Hi." Hello! Hello Hell Hel He H Hi Hi. "O", "O" O …
31 code-golf  string 

4
การออกเสียงลงคะแนนส่วนใหญ่ด้วย Cellular Automata
มีปัญหาที่สำคัญจริงๆในเซลออโตมาตาที่เรียกว่าปัญหาส่วนใหญ่ : ปัญหาส่วนใหญ่หรืองานการจำแนกความหนาแน่นเป็นปัญหาของการค้นหากฎการเคลื่อนที่อัตโนมัติแบบมิติเดียวที่ดำเนินการลงคะแนนเสียงส่วนใหญ่ได้อย่างแม่นยำ ... เมื่อกำหนดค่าของเซลล์ออโตมาตาสองสถานะด้วยเซลล์ i + j ทั้งหมดซึ่ง i อยู่ในสถานะเป็นศูนย์และ j ซึ่งอยู่ในสถานะเดียวทางออกที่ถูกต้องสำหรับปัญหาการลงคะแนนจะต้องตั้งค่าเซลล์ทั้งหมดให้เป็นศูนย์ในที่สุด i> j และต้องตั้งค่าเซลล์ทั้งหมดให้เป็นหนึ่งถ้า i <j สถานะสุดท้ายที่ต้องการจะไม่ระบุหาก i = j แม้ว่าจะได้รับการพิสูจน์แล้วว่าไม่มีเซลลูลาร์ออโตมาตาสามารถแก้ไขปัญหาส่วนใหญ่ได้ในทุกกรณี แต่มีกฎหลายข้อที่สามารถแก้ไขได้ในกรณีส่วนใหญ่ หุ่นยนต์ Gacs-Kurdyumov-Levin มีความแม่นยำประมาณ 78% โดยมีเงื่อนไขเริ่มต้นแบบสุ่ม กฎ GKL ไม่ซับซ้อน: รัศมี 3 หมายถึงสถานะใหม่ของเซลล์ขึ้นอยู่กับ 7 เซลล์ก่อนหน้านี้: ตัวเอง 3 เซลล์ทางด้านขวาและ 3 เซลล์ทางด้านซ้าย หากเซลล์อยู่ในขณะนี้Oสถานะใหม่ของมันคือส่วนใหญ่ของตัวเองเซลล์ไปทางซ้ายและเซลล์ 3 ก้าวไปทางซ้าย หากเซลล์อยู่ในขณะนี้1สถานะใหม่ของมันคือส่วนใหญ่ของตัวเองเซลล์ทางด้านขวาและเซลล์ 3 ขั้นตอนไปทางขวา นี่คือตัวอย่าง: 0 …

19
ฟังก์ชันผกผัน
มันจะไม่เป็นระเบียบหรือไม่ถ้าฟังก์ชั่นการเขียนโปรแกรมสามารถกลับด้านได้เหมือนกับฟังก์ชั่นทางคณิตศาสตร์ที่ใช้ เขียนฟังก์ชั่น (หรือโปรแกรม) ที่จะใช้เวลาหนึ่งการป้อนข้อมูลในรูปแบบใดที่เอาท์พุทx เมื่อไบต์ของโปรแกรมถูกเรียงลำดับใหม่ / ย้อนกลับเพื่อให้ไบต์แรกในตอนนี้เป็นไบต์สุดท้ายควรใช้หนึ่งอินพุตในรูปแบบและเอาต์พุตใด ๆแทนln(x)xe^x คำตอบของคุณต้องมีตัวเลขนัยสำคัญที่ถูกต้องอย่างน้อย 3 ตัว การประมาณนั้นใช้ได้ตราบใดที่มีตัวเลขนัยสำคัญที่ถูกต้องอย่างน้อย 3 ตัว รหัสของคุณจะต้องเป็นภาษาการเขียนโปรแกรมเดียวกันทั้งไปข้างหน้าและข้างหลัง สมมติว่าโปรแกรมนี้ใช้ln(x): abc你好 จากนั้นโปรแกรมนี้จะต้องดำเนินการe^x: \xBD\xA5\xE5\xA0\xBD\xE4cba โกลด์สตาร์หากคุณใช้ภาษาที่ไม่มีการสนับสนุนแบบลอย นี่เป็นรูปแบบแปลก ๆ ของ code-golf ดังนั้นโปรแกรมที่สั้นที่สุดชนะ

6
คุณปีนี้ดีไหม
บทนำ ซานต้ามีชื่อมากเกินไปที่จะดำเนินการและต้องการความช่วยเหลือของคุณ! เขาต้องการให้คุณเขียนโปรแกรมหรือฟังก์ชั่นที่เอาท์พุทnice, naughty, หรือvery naughty very very naughtyเพื่อกำหนดว่าคนดีหรือซนซานต้าได้พัฒนาอัลกอริทึม: นีซ ( ส่วน , คณิตศาสตร์ ): ก่อนอื่นเราได้ตัวเลขจากชื่อโดยการเพิ่มตัวอักษรทั้งหมดขึ้น ( เว้นช่องว่าง ) ตัวอย่างเช่น: Doorknob = D = 4 o = 15 o = 15 r = 18 k = 11 n = 14 o = 15 b = 2 4 + 15 + …

9
สร้างบิด“ Hello world!”
งานของคุณคือค่อนข้างง่ายเขียนโปรแกรมที่พิมพ์ว่าเมื่อบิดสร้างโปรแกรมที่พิมพ์Hello, world!Twister! วิธีการที่สตริงจะบิด อัลกอริทึมการบิดนั้นง่ายมาก แต่ละคอลัมน์ถูกเลื่อนลงโดยดัชนี (คอลัมน์ 0 เคลื่อนลง 0, คอลัมน์ 1 เลื่อน 1, ... ) การเปลี่ยนคอลัมน์ล้อมรอบด้านบน มันดูเหมือนว่า: a ba cba ---- cba cb c พร้อมทุกอย่างภายใต้การตัดบรรทัดไปด้านบน ตัวอย่างจริง: Original: \\\\\\\\\\\\ ............ ............ ............ Twisted: \...\...\... .\...\...\.. ..\...\...\. ...\...\...\ (ตัวอย่างเพิ่มเติมและ twisters ในภาษาที่คุณชื่นชอบอยู่ที่นี่ ) เกณฑ์การให้คะแนน โปรแกรมของคุณจะต้องเป็นสี่เหลี่ยมมุมฉาก นี่คือโค้ดกอล์ฟที่มีจำนวนไบต์ต่ำสุดที่จะชนะ! กฎระเบียบ โปรแกรมแรกของคุณจะต้องพิมพ์ Hello, world!โปรแกรมแรกของคุณจะต้องพิมพ์ขึ้นบรรทัดใหม่เพียงหนึ่งบรรทัดเท่านั้น โปรแกรมแรกและโปรแกรมที่สองของคุณต้องเป็นภาษาเดียวกัน Twister!โปรแกรมที่สองของคุณจะต้องพิมพ์ ขึ้นบรรทัดใหม่เพียงหนึ่งบรรทัดเท่านั้น …

30
Watson-Crick palindromes
ปัญหา สร้างฟังก์ชั่นที่สามารถตรวจสอบได้ว่าสาย DNA โดยพลการหรือไม่นั้นเป็น Palindrome ของ Watson-Crick ฟังก์ชั่นจะรับสาย DNA และเอาท์พุทเป็นค่าจริงหากสตริงนั้นเป็น Palatrome ของ Watson-Crick และเป็นค่าเท็จถ้าไม่ใช่ (จริงและเท็จยังสามารถแสดงเป็น 1 และ 0 ตามลำดับ) สตริงดีเอ็นเออาจเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กทั้งหมดขึ้นอยู่กับความต้องการของคุณ นอกจากนี้สตริง DNA จะไม่ว่างเปล่า คำอธิบาย สตริงดีเอ็นเอคือ palindrome ของ Watson-Crick เมื่อส่วนเติมเต็มของส่วนกลับมีค่าเท่ากับตัวมันเอง ให้สายอักขระดีเอ็นเอก่อนอื่นแล้วเสริมอักขระแต่ละตัวตามฐานดีเอ็นเอ (A ↔ T และ C ↔ G) หากสตริงเดิมเท่ากับสตริงที่กลับด้านที่สมบูรณ์นั่นคือ Palatsrome ของ Watson-Crick สำหรับข้อมูลเพิ่มเติมโปรดดูคำถามนี้ มันเป็นความท้าทายที่แตกต่างกันซึ่งคุณจะต้องค้นหาสตริงย่อยที่ยาวที่สุดของสตริงดีเอ็นเอโดยที่สตริงย่อยนั้นคือ Palindrome ของ Watson-Crick เป้าหมาย นี่คือรหัสกอล์ฟและรหัสที่สั้นที่สุดชนะ กรณีทดสอบ <input> …

17
ใครเป็นคนง่วงนอนที่สุดของพวกเขาทั้งหมด
เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้ในสายของตัวละคร-=o.ที่-=o'และ.' s สำรองเสมอตัวละครให้กับตัวละคร -=oสตริงจะมีมากขึ้นมีความยาวมากกว่าหนึ่งที่แปลกและมักจะเริ่มต้นและจบในหนึ่งใน โดยทั่วไปอินพุตจะมีลักษณะเหมือนใบหน้าอิโมติคอนที่ใช้สายตาร่วมกันในสภาวะต่าง ๆ ของความง่วงเช่น o.=.=.-.-.o.o เป้าหมายของคุณคือพิมพ์หรือส่งคืนใบหน้าที่หลับยากหรือตื่นมากที่สุด (ขึ้นอยู่กับคุณที่คุณเลือก) หากมีหลายทางเลือกสำหรับผู้ที่ง่วงนอน / ตื่นมากที่สุดคนใดคนหนึ่งอาจออก มีเก้าใบหน้าที่แตกต่างและห้าระดับของความง่วงนอน: -.- is 100% sleepy -.= is 75% sleepy -.o is 50% sleepy =.- is 75% sleepy =.= is 50% sleepy =.o is 25% sleepy o.- is 50% sleepy o.= is 25% sleepy o.o is 0% sleepy …
31 code-golf  string 

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