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

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

2
กระชับโปรแกรม Befunge
Befungeเป็นภาษาโปรแกรมลับสองมิติ แนวคิดพื้นฐานคือคำสั่ง (อักขระหนึ่งตัว) ถูกวางไว้บนกริด 2 มิติ โฟลว์ควบคุมเดินข้ามตารางดำเนินการคำสั่งที่ส่งผ่านและเปลี่ยนทิศทางเมื่อกระทบกับลูกศร ( >^<v) คำสั่งเป็นแบบสแต็ก ดูรายการนี้ ดูเพิ่มเติมhttp://esolangs.org/wiki/Befunge ข้อมูลจำเพาะสำหรับ Befunge-98มีให้บริการ ปัญหา เขียนโปรแกรมที่แปลงโปรแกรม Befunge เป็นรูปแบบที่กะทัดรัดยิ่งขึ้น ตัวอย่างเช่นโปรแกรมต่อไปนี้จะพิมพ์0: > 0 v > @ . ^ < ในกรณีนี้มันสามารถบีบอัดได้โดยไม่ต้องเปลี่ยนพฤติกรรมของโปรแกรมโดยการลบแถวของช่องว่างเพื่อให้ >0v >@. ^ < การแปลงซับซ้อนมากขึ้นสามารถหมุนหรือเรียงลำดับคำสั่งของมิเรอร์และกำจัดคำสั่งควบคุมโฟลว์ที่ไม่จำเป็นเพื่อให้โปรแกรมมีขนาดกะทัดรัด ตัวอย่างเช่นด้วยโปรแกรมนี้: >12345v 6 v....7< . . . @ คุณอาจปิดท้ายโปรแกรมเข้าไปในรู: >12345v >...@ 6 ^....7< สำหรับตัวอย่างแรกโปรแกรมขนาดกะทัดรัดที่สุดที่เป็นไปได้คือ >0.@ คุณสามารถใช้การแปลงใด ๆ …

3
รหัสที่เร็วที่สุดเพื่อค้นหานายกคนต่อไป
ปัญหามีดังนี้ อินพุต:จำนวนเต็มn เอาท์พุท:nที่เล็กที่สุดที่สำคัญมีขนาดใหญ่กว่า ความท้าทายคือการให้รหัสที่เร็วที่สุดเท่าที่จะทำได้ ฉันจะทดสอบโค้ดเกี่ยวกับค่าเริ่มต้นที่ขนาด ประมาณ10^8 10^200และเพิ่มเป็นสองเท่าจนกว่าจะใช้เวลามากกว่าหนึ่งนาที 10 วินาทีบนคอมพิวเตอร์ของฉัน รหัสที่ชนะจะค้นหารหัสเฉพาะถัดไปสำหรับขนาดอินพุตที่ใหญ่ที่สุด จากการเปรียบเทียบตะแกรงเรียบง่ายที่เขียนด้วยไพ ธ อนสามารถค้นหาไพรม์ถัดไปที่ใหญ่กว่า10^8ใน20เวลาประมาณไม่กี่วินาที ความต้องการที่ฉันสามารถทดสอบบนคอมพิวเตอร์ 4GB RAM ของฉันเป็น Ubuntu อย่างเข้มงวด รหัสทั้งหมดจะต้องเป็นอิสระ (ทั้งในประสาทสัมผัส) และถ้ามันใช้ไลบรารีพวกเขาจะต้องเป็นอิสระและติดตั้งได้ง่าย ช่วงเวลาที่ผิดพลาดใด ๆ ที่รายงานจะตัดสิทธิ์การส่งทันที ฉันจะให้รางวัลแก่ผู้ชนะในการเขียนโปรแกรมแต่ละภาษาด้วยเช่นกันหากรหัสนั้นเขียนด้วยภาษานั้นโดยไม่ต้องใช้ห้องสมุดภายนอก ฉันจะเก็บตารางวิ่งในเวลาที่เร็วที่สุดในขณะที่การแข่งขันดำเนินต่อไปเพื่อให้ผู้คนเห็นว่าพวกเขากำลังทำอะไรอยู่ ตารางเท่านี้ หลาม น่าอัศจรรย์357หลักที่สำคัญ343239883006530485749095039954069660863471765007165270469723172959277159169882802606127982033072727748864815569574042901856099399985832190628701414555752857600000000000000000000000000000000000000002872284792758930912601189043411951050852357613658978971208596097634095500808832510259693761982135208603287199546795000697807728609476163156438356035166156820611เป็นจำนวนสุดท้ายต่ำกว่า 10 primoวินาทีโดยใช้รหัสที่จัดทำโดย ใครจะชนะรายการแรกนี้หรือไม่

26
พื้นที่สามเหลี่ยมด้านข้างด้านข้าง
กำหนดรูปสามเหลี่ยมสามด้านให้พื้นที่การพิมพ์ของรูปสามเหลี่ยมนี้ กรณีทดสอบ: ใน: 2,3,4 ออก: 2.90473750965556 ใน: 3,4,5 ออก: 6 สมมติว่าทั้งสามด้าน a, b, c เสมอ a> 0, b> 0, c> 0, a + b> c, b + c> a, c + a> b
17 code-golf  math 

3
เขียนโค้ด java เพื่อตรวจหาเวอร์ชัน JVM
วัตถุประสงค์คือการเขียนโค้ดจาวาที่ตรวจจับเวอร์ชัน JVM โดยอาศัยการเปลี่ยนแปลงความเข้ากันได้ผลข้างเคียงข้อบกพร่องและ / หรือพฤติกรรมที่ไม่ได้กำหนดซึ่งทำงานในลักษณะหนึ่งเวอร์ชันและอีกวิธีในเวอร์ชันอื่น นอกจากนี้โค้ดควรมีอย่างน้อยอ่านได้เล็กน้อยโดยไม่เสียสละช่องว่างและชื่อตัวแปรที่ชัดเจน เพื่อให้มั่นใจว่าวัตถุประสงค์กฎอย่างเป็นทางการที่แน่นอนคือ: รหัสจะต้องเขียนใน java และควรส่งออกรุ่น JRE ที่มันกำลังทำงานอยู่ รหัสจะต้องไม่ใช้ JDK หรือ JRE API ใด ๆ ที่จัดไว้ให้โดยเฉพาะสำหรับการตรวจจับเวอร์ชันจาวาหรือซึ่งให้รุ่น JDK หรือ JRE ฟรี รหัสจะต้องไม่ใช้การสะท้อน รหัสจำเป็นต้องใช้เพื่อทำงานใน Hotspot Java SE 5, 6 และ 7 แต่อาจทำงานใน JVM อื่น ๆ รหัสต้องไม่ใช้ไลบรารีบุคคลที่สามใด ๆ ใน classpath รหัสจะต้องไม่เริ่มกระบวนการอื่นใด java หรือไม่ รหัสจะต้องไม่ใช้ตัวแปรสภาพแวดล้อม รหัสจะต้องไม่ค้นหาระบบไฟล์เพื่อค้นหาไฟล์หรือโฟลเดอร์ที่มีอยู่แล้ว รหัสจะต้องอยู่ในไฟล์เดียวและจะเรียกว่าผ่านหรือpublic static void main(String[] …

22
ระบุจำนวนที่น้อยที่สุดที่มีตัวหาร N
ฟังก์ชั่นของคุณใช้จำนวนธรรมชาติและส่งกลับจำนวนธรรมชาติที่เล็กที่สุดซึ่งมีตัวหารจำนวนนั้นรวมถึงตัวมันเอง ตัวอย่าง: f(1) = 1 [1] f(2) = 2 [1, 2] f(3) = 4 [1, 2, 4] f(4) = 6 [1, 2, 3, 6] f(5) = 16 [1, 2, 4, 8, 16] f(6) = 12 [1, 2, 3, 4, 6, 12] ... ฟังก์ชั่นไม่จำเป็นต้องส่งคืนรายการตัวหาร แต่เป็นเพียงตัวอย่างเท่านั้น

30
พิมพ์ตารางสูตรคูณนี้
เขียนรหัสที่สั้นที่สุดเพื่อพิมพ์ตารางสูตรคูณต่อไปนี้: 1×1=1 1×2=2 2×2=4 1×3=3 2×3=6 3×3=9 1×4=4 2×4=8 3×4=12 4×4=16 1×5=5 2×5=10 3×5=15 4×5=20 5×5=25 1×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=36 1×7=7 2×7=14 3×7=21 4×7=28 5×7=35 6×7=42 7×7=49 1×8=8 2×8=16 3×8=24 4×8=32 5×8=40 6×8=48 7×8=56 8×8=64 1×9=9 2×9=18 3×9=27 4×9=36 5×9=45 6×9=54 7×9=63 8×9=72 9×9=81

7
C: แทนที่ตารางย่อย AES FIPS-197 โดยรหัสเวลาคงที่
ในFIPS-197 ( มาตรฐานการเข้ารหัสขั้นสูงที่รู้จักกันในชื่อ AES) มีการใช้งานอย่างหนักSubBytesซึ่งสามารถนำไปใช้เป็น unsigned char SubBytes(unsigned char x) { static const unsigned char t[256] = { 0x63,0x7C,0x77,0x7B,0xF2,0x6B,0x6F,0xC5,0x30,0x01,0x67,0x2B,0xFE,0xD7,0xAB,0x76, 0xCA,0x82,0xC9,0x7D,0xFA,0x59,0x47,0xF0,0xAD,0xD4,0xA2,0xAF,0x9C,0xA4,0x72,0xC0, 0xB7,0xFD,0x93,0x26,0x36,0x3F,0xF7,0xCC,0x34,0xA5,0xE5,0xF1,0x71,0xD8,0x31,0x15, 0x04,0xC7,0x23,0xC3,0x18,0x96,0x05,0x9A,0x07,0x12,0x80,0xE2,0xEB,0x27,0xB2,0x75, 0x09,0x83,0x2C,0x1A,0x1B,0x6E,0x5A,0xA0,0x52,0x3B,0xD6,0xB3,0x29,0xE3,0x2F,0x84, 0x53,0xD1,0x00,0xED,0x20,0xFC,0xB1,0x5B,0x6A,0xCB,0xBE,0x39,0x4A,0x4C,0x58,0xCF, 0xD0,0xEF,0xAA,0xFB,0x43,0x4D,0x33,0x85,0x45,0xF9,0x02,0x7F,0x50,0x3C,0x9F,0xA8, 0x51,0xA3,0x40,0x8F,0x92,0x9D,0x38,0xF5,0xBC,0xB6,0xDA,0x21,0x10,0xFF,0xF3,0xD2, 0xCD,0x0C,0x13,0xEC,0x5F,0x97,0x44,0x17,0xC4,0xA7,0x7E,0x3D,0x64,0x5D,0x19,0x73, 0x60,0x81,0x4F,0xDC,0x22,0x2A,0x90,0x88,0x46,0xEE,0xB8,0x14,0xDE,0x5E,0x0B,0xDB, 0xE0,0x32,0x3A,0x0A,0x49,0x06,0x24,0x5C,0xC2,0xD3,0xAC,0x62,0x91,0x95,0xE4,0x79, 0xE7,0xC8,0x37,0x6D,0x8D,0xD5,0x4E,0xA9,0x6C,0x56,0xF4,0xEA,0x65,0x7A,0xAE,0x08, 0xBA,0x78,0x25,0x2E,0x1C,0xA6,0xB4,0xC6,0xE8,0xDD,0x74,0x1F,0x4B,0xBD,0x8B,0x8A, 0x70,0x3E,0xB5,0x66,0x48,0x03,0xF6,0x0E,0x61,0x35,0x57,0xB9,0x86,0xC1,0x1D,0x9E, 0xE1,0xF8,0x98,0x11,0x69,0xD9,0x8E,0x94,0x9B,0x1E,0x87,0xE9,0xCE,0x55,0x28,0xDF, 0x8C,0xA1,0x89,0x0D,0xBF,0xE6,0x42,0x68,0x41,0x99,0x2D,0x0F,0xB0,0x54,0xBB,0x16}; return t[x];} ฟังก์ชั่นนี้ไม่ได้ใช้เอง มันคือการทำแผนที่ย้อนกลับได้ประกอบด้วยการผกผันในสนาม Galois ตามด้วยการแปลงเลียนแบบ รายละเอียดทั้งหมดอยู่ในส่วนFIPS-197 5.1.1 หรือที่นี่ส่วน 4.2.1 (ภายใต้ชื่อที่แตกต่างกันเล็กน้อย) ปัญหาหนึ่งที่มีการดำเนินการเป็นตารางก็คือว่ามันจะเปิดไปที่เรียกว่าการโจมตีแคชระยะเวลา ดังนั้นภารกิจของคุณคือการสร้างสิ่งทดแทนที่แน่นอนสำหรับSubBytes()ฟังก์ชั่นด้านบนซึ่งแสดงพฤติกรรมที่คงที่ตลอดเวลา เราจะถือว่าเป็นกรณีที่เมื่อไม่มีอะไรขึ้นอยู่กับการป้อนข้อมูลxของSubBytesจะใช้อย่างใดอย่างหนึ่ง เป็นดัชนีอาร์เรย์ การควบคุมตัวถูกดำเนินการของif, …

10
เมทริกซ์จากน้อยไปมาก
"เมทริกซ์จากน้อยไปมาก" เป็นเมทริกซ์ที่ไม่มีที่สิ้นสุดของจำนวนเต็ม (รวม 0) ซึ่งองค์ประกอบใด ๆ เป็นองค์ประกอบที่มีขนาดเล็กที่สุดซึ่งไม่เคยใช้ในแถวและคอลัมน์นั้นมาก่อน: | 1 2 3 4 5 6 ... --+---------------- 1 | 0 1 2 3 4 5 ... 2 | 1 0 3 2 5 4 ... 3 | 2 3 0 1 6 7 ... 4 | 3 2 1 0 7 …
17 code-golf  math  matrix  programming-puzzle  code-golf  music  code-challenge  programming-puzzle  code-golf  fastest-code  code-golf  number  game  code-golf  combinatorics  code-golf  math  sequence  restricted-complexity  code-golf  number  random  code-golf  array-manipulation  code-golf  math  matrix  code-golf  number  sequence  counting  code-golf  math  number  sequence  popularity-contest  number  sequence  code-golf  music  code-golf  number  code-golf  ascii-art  arithmetic  code-golf  code-golf  number  code-golf  code-challenge  array-manipulation  code-golf  grammars  code-challenge  polyglot  code-golf  game  math  python  programming-puzzle  code-challenge  king-of-the-hill  code-challenge  fastest-code  primes  number-theory  number-theory  primes  fastest-code  factoring  popularity-contest  compile-time  code-golf  math 

2
รวบรวม Regexes
ในภารกิจนี้คุณต้องเขียนโปรแกรมที่อ่านนิพจน์ปกติและสร้างโปรแกรมอื่นที่แสดงว่านิพจน์ปกตินั้นยอมรับอินพุตหรือไม่ ผลลัพธ์จะต้องเป็นโปรแกรมที่เขียนด้วยภาษาเดียวกันกับที่คุณส่ง อินพุต อินพุตคือการแสดงออกปกติRจับคู่ ABNF ดังต่อไปนี้ (กฎการผลิตเริ่มต้นREGEX): REGEX = *( STAR / GROUP / LITERAL / ALTERNATIVE ) STAR = REGEX '*' GROUP = '(' REGEX ')' LITERAL = ALPHA / DIGIT ALTERNATIVE = REGEX '|' REGEX หากอินพุตไม่ตรงกับไวยากรณ์นี้พฤติกรรมของโปรแกรมของคุณจะไม่ได้กำหนด การตีความ ป้อนข้อมูลเป็นนิพจน์ปกติโดยที่*Kleene-star (หมายถึงอาร์กิวเมนต์ซ้ายซ้ำแล้วซ้ำอีกเป็นศูนย์หรือมากกว่านั้น ) |เป็นอีกทางเลือกหนึ่ง(และ)จัดกลุ่มและไม่มีตัวดำเนินการใด ๆ ที่ต่อกัน การจัดกลุ่มจะมีความสำคัญเหนือกว่าดาวฤกษ์จะมีความสำคัญเหนือกว่าการต่อเรียงและการเรียงต่อกันจะมีความสำคัญมากกว่าทางเลือก สตริงมีการกล่าวถึงว่าเป็นที่ยอมรับถ้า regex ตรงกับสตริงทั้งหมด เอาท์พุต …

21
เขียนโปรแกรมที่ใช้สัญลักษณ์ ASCII ที่ไม่ใช่ตัวอักษรและตัวเลขที่พิมพ์ได้ทั้งหมด
โดยเฉพาะให้ใช้สัญลักษณ์เหล่านี้อย่างน้อยหนึ่งครั้งในซอร์สโค้ดของคุณ: ! " # $ % & ' () * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~ สัญลักษณ์ภายในความคิดเห็นสตริงตัวอักษร regexps (หรือตัวอักษรชนิดอื่น ๆ ฯลฯ ) จะไม่ถูกนับ (แต่ตัวคั่นเช่น/**/หรือ""จะนับ) โปรแกรมไม่ควรดำเนินการใด ๆ มันต้องรวบรวมและไม่ทำอะไรเลยเมื่อทำงาน หากด้วยเหตุผลบางอย่างสัญลักษณ์บางอย่างไม่สามารถใช้ในภาษาที่คุณเลือกได้ให้อธิบายว่าอย่างจริงจัง (จะต้องยกเว้นอะไรและเพราะเหตุใด) อัปเดต:คำตอบที่ใช้สัญลักษณ์สองสามข้อพร้อมกับนิพจน์ทั่วไป ฉันคิดว่ามันมีปัญหานิดหน่อยมันก็เหมือนกับใส่ลงในตัวอักษรหรือสตริงความคิดเห็น (นั่นเป็นเหตุผลที่ฉันใส่ฯลฯในข้อกำหนดนั้น) โปรดลองไม่มีสิ่งนี้ ฉันยังปรับปรุงข้อกำหนดข้างต้น …

4
หมุนภาพศิลปะ ASCII
จากตัวละคร ASCII ทั้งหมดนั้นง่ายที่จะบอกว่าบางคนในกลุ่มนั้นเป็นกลุ่มที่มีการหมุนของตัวละครพื้นฐานเดียวกัน ตัวอย่างเช่นV > ^ <. สิ่งนี้ทำให้สามารถสร้างงานศิลปะ ASCII ที่สามารถหมุนได้ทวีคูณ 90 องศาและยังคงเป็นศิลปะ ASCII ความท้าทาย เป้าหมายของคุณคือเล่นกอล์ฟโปรแกรมที่ยอมรับศิลปะ ASCII และจำนวนองศาเพื่อหมุนจาก STDIN และพิมพ์ศิลปะ ASCII ที่หมุนแล้วไปยัง STDOUT ในบรรทัดแรกของการป้อนข้อมูลโปรแกรมของคุณจะได้รับตัวเลข N ตัวเลขนี้แสดงถึงความกว้างและความสูงของรูปแบบ ASCII จากนั้นคุณจะได้รับ N บรรทัดจำนวน N อักขระมากขึ้นอย่างแน่นอนแต่ละบรรทัด (ขึ้นบรรทัดใหม่จะไม่นับในจำนวนนี้) ขนาดของศิลปะมักจะเป็นสี่เหลี่ยมจัตุรัสแม้ว่ามันอาจจะมีช่องว่างภายในในรูปแบบของช่องว่างเพื่อให้มันเป็นสี่เหลี่ยม จากนั้นคุณจะได้รับหนึ่งหมายเลขเพิ่มเติมในบรรทัดสุดท้าย: 90, 180, หรือ 270 ซึ่งแสดงถึงจำนวนองศาของภาพที่หมุนตามเข็มนาฬิกา หมายเหตุ: รูปภาพที่ป้อนจะมีเฉพาะอักขระที่สามารถหมุนได้ตามจำนวนที่ถูกต้อง หากอินพุตไม่ตรงกับข้อกำหนดเหล่านี้อย่างแน่นอนไม่จำเป็นต้องมีพฤติกรรมที่เฉพาะเจาะจง โปรแกรมของคุณควรพิมพ์ตัวอักษร N บรรทัด N ตัวโดยมีบรรทัดใหม่หลังจากแต่ละบรรทัด รูปภาพควรหมุนเพื่อให้อักขระแต่ละตัวในต้นฉบับถูกแทนที่ด้วยเวอร์ชันที่หมุนแล้วและถูกย้ายไปยังตำแหน่งที่ถูกต้องในรูปภาพ ตัวอย่าง (ไม่ใช่ศิลปะ …

1
Regex กำลังตรวจสอบความถูกต้องของ regex [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัพเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Code Golf Stack Exchange ปิดให้บริการใน2 ปีที่ผ่านมา สร้าง regex ที่จะยอมรับสตริง regex เป็นอินพุตและตรวจสอบว่ามันถูกต้อง โดยทั่วไป regex ของคุณควรจะสามารถตรวจสอบตัวเอง (ไม่ควรตรวจสอบ regex ที่ไม่ถูกต้องดังนั้นคุณจึงไม่สามารถใช้.*;) รสชาติของคุณจะต้องได้รับการสนับสนุนอย่างเต็มที่จากการใช้งานที่รู้จักกันดี (Perl, sed, grep, gawk, ฯลฯ ) และต้องสนับสนุนอย่างเต็มที่ว่าการใช้งานเหล่านั้นรองรับอะไรบ้าง [ไม่ต้องกังวลกับทนายพูด ฉันแค่พยายามลบช่องว่างที่เป็นไปได้สำหรับสมาร์ท ***] ฉันเขียนโค้ดกอล์ฟแต่ฉันกังวลว่ามันจะให้ความรู้แก่ผู้ที่รู้จักและใช้รสชาติที่ไม่มีคุณสมบัติ หรือความกังวลของฉันไม่มีมูลความจริง?
17 code-challenge  code-golf  code-golf  game  sudoku  code-challenge  math  ai-player  code-challenge  sorting  rosetta-stone  code-challenge  code-challenge  programming-puzzle  code-golf  number  code-golf  maze  code-golf  math  regular-expression  code-golf  sequence  code-golf  graph-theory  code-golf  string  word-puzzle  natural-language  brainfuck  metagolf  optimized-output  fastest-algorithm  code-golf  game-of-life  cellular-automata  code-golf  puzzle-solver  grid  code-golf  combinatorics  binary-tree  popularity-contest  code-challenge  code-golf  ascii-art  kolmogorov-complexity  brainfuck  metagolf  code-golf  c  date  code-golf  word-puzzle  crossword  word-search  code-golf  code-golf  quine  code-golf  string  random 

3
เขียนคำสั่งที่สาม quine
ความท้าทายนี้เป็นส่วนเสริมของ ' Golf a quine ร่วม ' ใช้ภาษาที่คุณเลือกสามภาษาสร้างโปรแกรมOuroborosลำดับที่สาม นั่นคือในภาษา A ให้เขียนโปรแกรม pA ซึ่งเอาต์พุตโปรแกรม pB ในภาษา B โปรแกรม pB ควรเอาต์พุตโปรแกรม pC ในภาษา C ซึ่งจะส่งผลให้โปรแกรมดั้งเดิม pA เป็นภาษา A ไม่มีสองภาษาใน A, B และ C สามารถเหมือนกันหรือเซ็ตย่อยหรือซูเปอร์เซ็ตของกันและกัน ไม่มี pA, pB หรือ pC ที่เหมือนกัน ตัวอย่างเช่นโปรแกรม Haskell แสดงผลโปรแกรม Perl ซึ่งแสดงผลโปรแกรม Java ซึ่งแสดงผลโปรแกรม Haskell ดั้งเดิมจะใช้ได้ ในทางกลับกันโปรแกรม C # …
17 code-golf  quine 

17
เขียนโปรแกรมที่ถูกต้องหลังจากเปลี่ยนตัวอักษรแบบวงกลม
อาจเป็นเรื่องยากมาก แต่ฉันได้เห็นสิ่งที่น่าอัศจรรย์บางอย่างเกิดขึ้นจากเว็บไซต์นี้ เป้าหมายคือการเขียนโปรแกรมในภาษาใดก็ได้ที่ทำสิ่งที่คุณต้องการ จับคือว่าโปรแกรมที่จะต้องถูกต้องหลังจากที่ใด ๆการเลื่อนวนของตัวละคร การกะตัวอักษรแบบวงกลมคล้ายกับการเลื่อนแบบวงกลมมาก ตัวอย่างบางอย่างชัดเจนขึ้น สำหรับโปรแกรม int main() { return 0; } การเลื่อนไปทางซ้าย 6 ตัวอักขระจะทำให้: in() { return 0; }int ma ขยับไปทางซ้ายโดยอักขระ 1 ตัวให้ผลดังนี้: nt main() { return 0; }i ขยับไปทางขวา 10 ตัวอักษรให้ผล: eturn 0; }int main() { r อย่างไรก็ตามโปรแกรมนี้เห็นได้ชัดว่าไม่สอดคล้องกับกฎ กฎระเบียบ ภาษาใดก็ได้ ผู้ชนะจะถูกตัดสินโดยการนับคะแนน โซลูชั่นที่ทำในสิ่งเดียวกันหรือแตกต่างกันอย่างสิ้นเชิงสำหรับแต่ละรอบการหมุนจะได้รับ 100 คะแนนเสมือนจริงสำหรับคะแนนของพวกเขา UPDATEฉันคิดว่านี่มันนานพอแล้ว ผู้ชนะที่ได้รับคะแนนเสียงมากที่สุด …

17
แสดงผลลัพธ์ของการทำไพ่ 8 สับที่สมบูรณ์แบบของไพ่
คำอธิบาย การสลับที่สมบูรณ์แบบคือที่ไพ่มีการแบ่งครึ่งและไพ่จากแต่ละกองสลับกัน บัตรด้านล่างเดิมและบัตรบนสุดจะต้องเก็บรักษาไว้หลังจากการสับเปลี่ยนที่สมบูรณ์แบบ หลังจากการสับไพ่ 8 ครั้งที่สมบูรณ์แบบสำรับไพ่มาตรฐาน 52 ใบกลับสู่การสั่งซื้อเดิม ท้าทาย เขียนโปรแกรมที่แสดงสถานะของสำรับไพ่ที่ผ่านการสับไพ่ที่สมบูรณ์แบบติดต่อกัน 8 ครั้ง คุณสามารถใช้สำรับที่เป็นมนุษย์ที่สามารถอ่านได้โดยมีเงื่อนไขว่าจะแสดงหมายเลขและชุดของไพ่แต่ละใบในสำรับตามลำดับ จะต้องแสดงการเป็นตัวแทนของการ์ดทั้งหมดสำหรับทั้งเก้ารัฐ นี่คือรหัสกอล์ฟดังนั้นทางออกที่สั้นที่สุดชนะ ตัวอย่างผลลัพธ์ นี่คือตัวอย่างเอาต์พุตที่สร้างโดยการนำตัวอย่างนี้ไปใช้ใน Javascript AS,AC,AD,AH,2S,2C,2D,2H,3S,3C,3D,3H,4S,4C,4D,4H,5S,5C,5D,5H,6S,6C,6D,6H,7S,7C,7D,7H,8S,8C,8D,8H,9S,9C,9D,9H,10S,10C,10D,10H,JS,JC,JD,JH,QS,QC,QD,QH,KS,KC,KD,KH AS,7D,AC,7H,AD,8S,AH,8C,2S,8D,2C,8H,2D,9S,2H,9C,3S,9D,3C,9H,3D,10S,3H,10C,4S,10D,4C,10H,4D,JS,4H,JC,5S,JD,5C,JH,5D,QS,5H,QC,6S,QD,6C,QH,6D,KS,6H,KC,7S,KD,7C,KH AS,4C,7D,10H,AC,4D,7H,JS,AD,4H,8S,JC,AH,5S,8C,JD,2S,5C,8D,JH,2C,5D,8H,QS,2D,5H,9S,QC,2H,6S,9C,QD,3S,6C,9D,QH,3C,6D,9H,KS,3D,6H,10S,KC,3H,7S,10C,KD,4S,7C,10D,KH AS,9S,4C,QC,7D,2H,10H,6S,AC,9C,4D,QD,7H,3S,JS,6C,AD,9D,4H,QH,8S,3C,JC,6D,AH,9H,5S,KS,8C,3D,JD,6H,2S,10S,5C,KC,8D,3H,JH,7S,2C,10C,5D,KD,8H,4S,QS,7C,2D,10D,5H,KH AS,5S,9S,KS,4C,8C,QC,3D,7D,JD,2H,6H,10H,2S,6S,10S,AC,5C,9C,KC,4D,8D,QD,3H,7H,JH,3S,7S,JS,2C,6C,10C,AD,5D,9D,KD,4H,8H,QH,4S,8S,QS,3C,7C,JC,2D,6D,10D,AH,5H,9H,KH AS,3S,5S,7S,9S,JS,KS,2C,4C,6C,8C,10C,QC,AD,3D,5D,7D,9D,JD,KD,2H,4H,6H,8H,10H,QH,2S,4S,6S,8S,10S,QS,AC,3C,5C,7C,9C,JC,KC,2D,4D,6D,8D,10D,QD,AH,3H,5H,7H,9H,JH,KH AS,2S,3S,4S,5S,6S,7S,8S,9S,10S,JS,QS,KS,AC,2C,3C,4C,5C,6C,7C,8C,9C,10C,JC,QC,KC,AD,2D,3D,4D,5D,6D,7D,8D,9D,10D,JD,QD,KD,AH,2H,3H,4H,5H,6H,7H,8H,9H,10H,JH,QH,KH AS,AD,2S,2D,3S,3D,4S,4D,5S,5D,6S,6D,7S,7D,8S,8D,9S,9D,10S,10D,JS,JD,QS,QD,KS,KD,AC,AH,2C,2H,3C,3H,4C,4H,5C,5H,6C,6H,7C,7H,8C,8H,9C,9H,10C,10H,JC,JH,QC,QH,KC,KH AS,AC,AD,AH,2S,2C,2D,2H,3S,3C,3D,3H,4S,4C,4D,4H,5S,5C,5D,5H,6S,6C,6D,6H,7S,7C,7D,7H,8S,8C,8D,8H,9S,9C,9D,9H,10S,10C,10D,10H,JS,JC,JD,JH,QS,QC,QD,QH,KS,KC,KD,KH

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