คำถามติดแท็ก code-golf

Code-golf เป็นการแข่งขันเพื่อแก้ไขปัญหาเฉพาะในส่วนที่น้อยที่สุดของซอร์สโค้ด

21
ข้อเท็จจริงเพิ่มเติม!
ในคณิตศาสตร์ปัจจัยสั้นลง "ความจริง" ของจำนวนเต็มไม่เป็นลบn , เขียนแทนด้วยn! เป็นผลิตภัณฑ์ของจำนวนเต็มบวกทั้งหมดน้อยกว่าหรือเท่ากับn ตัวอย่างเช่น5! คือ1 * 2 * 3 * 4 * 5 = 120 แฟกทอเรียลของ0คือ1ตามแบบแผนของผลิตภัณฑ์เปล่า นี่คือข้อเท็จจริงทั่วไปที่เราคุ้นเคย เพิ่มทางเลือกอื่น ๆ : แฟคทอเรียล (นิยามด้านบน) แฟคทอเรียลคู่: n !! = 1 + 2 + ... + n แฟคทอเรียล: n !!! = 1 - (2 - (3 - (... - n))) ... …

4
อาจเป็นไปไม่ได้ที่ลูกบาศก์
ปัญหา รับอินพุตaเมื่อ a เป็นค่าความจริง / เท็จส่งออก cube ที่เป็นไปไม่ได้ที่แน่นอนด้านล่างหากความจริงและ cube ปกติที่แน่นอนด้านล่างหาก falsey อินพุตtruthy: ___________________________________ / _______________________________ /| / / _____________________________/ / | / / /| | / / | / / / | | / / | / / /| | | / / /| | / / / | | …

25
Patttern ง่าย
ปัจจัยการผลิต: ตัวเลขสองหลักเดียว (เรียกว่าพวกมันmและn) และสองตัวอักษร (เรียกมันว่า) aและbในรูปแบบอินพุตที่คุณเลือก เอาท์พุท: m=2, n=5, a='a', b='b'สำหรับคำแนะนำการหลอก เอาต์พุตของคุณจะเป็นสตริงที่สร้างจากอินพุตสี่ตัวของคุณ ขอเรียกสตริงที่มีค่าresult ""ครั้งแรก concatenate aบนresult mเวลาเพื่อ concatenate aบนresult 2ครั้ง ตอนนี้เท่ากับresult aaประการที่สอง concatenate bบนresult mเวลาเพื่อ concatenate bบนresult 2ครั้ง ตอนนี้เท่ากับresult aabbสุดท้ายหากผลเป็นที่เรียบร้อยแล้วนานกว่าn, ตัดเพื่อที่จะมีความยาวresult nมิฉะนั้นต่อสลับกับmระยะเวลาในการทำงานของaและbจนกว่าจะมีความยาวresult nสุดท้ายresultมีที่ซึ่งมีความยาวaabba5 กรณีทดสอบ: Input: m = 2, n = 4, a = A, b = B Output: AABB Input: …
17 code-golf  string  code-golf  arithmetic  code-golf  string  array-manipulation  rubiks-cube  code-golf  math  number  code-golf  tips  bash  code-golf  ascii-art  music  code-golf  arithmetic  code-golf  math  number  arithmetic  integer  code-golf  number  array-manipulation  code-golf  geometry  grid  set-partitions  code-golf  math  number  code-golf  combinatorics  code-golf  regular-expression  code-golf  permutations  code-golf  ascii-art  code-golf  number  array-manipulation  matrix  code-golf  kolmogorov-complexity  compile-time  cops-and-robbers  polyglot  cops-and-robbers  polyglot  code-golf  string  code-golf  string  ascii-art  matrix  animation  code-golf  ascii-art  code-golf  string  balanced-string  code-golf  integer  integer-partitions  expression-building 

12
มันเป็นเพียงอินพุตบั๊ก
ดำเนินการต่อของฉันมันเป็นเพียงข้อบกพร่องความท้าทาย : การป้อนข้อมูล: สตริงที่ประกอบด้วยอักขระ ASCII ที่พิมพ์ได้โดยไม่มีช่องว่างหรือบรรทัดใหม่ เอาท์พุท: ก่อนอื่นให้เปลี่ยนอินพุทเป็นพาเรนโดรมโดยย้อนกลับอินพุตและเพิ่มเข้าไปก่อนโดยไม่รวมอักขระกลาง (เช่นด้วยอินพุต1234567890มันจะกลายเป็น0987654321234567890) แล้วเอาท์พุทข้อความนี้: 0 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 0 0 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 0 0 9 …

10
THE Magic Hexagon
มีสี่เหลี่ยมเวทย์มนตร์มากมาย แต่มีเพียงหกเหลี่ยมเวทย์มนตร์ที่ไม่สำคัญเพียงอย่างเดียวดังที่ดร. เจมส์กริมม์อธิบายซึ่งต่อไปนี้: 18 17 3 11 1 7 19 9 6 5 2 16 14 8 4 12 15 13 10 ตามที่เขียนไว้ในHexagonyนี่เป็นการเขียนที่ง่ายที่สุดในหนึ่งบรรทัดโดยเพียงแค่อ่านทีละแถว: 18 17 3 11 1 7 19 9 6 5 2 16 14 8 4 12 15 13 10 แน่นอนว่ามีทั้งหมดสิบสองรายการที่เป็นตัวแทนของรูปหกเหลี่ยมเวทย์มนตร์นี้หากคุณนับการหมุนและการสะท้อนกลับ เช่นการหมุนตามเข็มนาฬิกา 1/6 ของรูปหกเหลี่ยมด้านบนจะส่งผลให้ 9 11 18 14 …

14
คุณคือเจ้าแห่งการแข่งขันกีฬาโอลิมปิก!
คุณเป็นเจ้าภาพการแข่งขันกีฬาโอลิมปิกและต้องสร้างสระว่ายน้ำที่ยอดเยี่ยมเพื่อโอกาส แต่หัวหน้างานมักจะเปลี่ยนใจเกี่ยวกับขนาดและต้องการวิธีที่รวดเร็วในการสร้างใหม่ตามขนาดที่ร้องขอ! รับจำนวนเต็มสองจำนวนLและxงานของคุณคือสร้างสระว่ายน้ำที่มีความยาวLและxเลน สระว่ายน้ำสร้างขึ้นได้อย่างไร? มันประกอบด้วยสี่เหลี่ยมด้านในซึ่งผนังแนวนอนทำด้วยLเครื่องหมายขีดกลาง ( -) และผนังแนวตั้งทำจาก3x - 1บาร์ ( |) นอกจากนี้ 4+สัญญาณทั้งอยู่ในแต่ละมุม ลองมาตัวอย่าง ( L = 10, x = 2): + + ---------- | | | | | | | | | | + + ---------- แต่ละเลนมีความกว้าง 2 ยูนิตในแนวตั้ง จตุรัสด้านในเต็มไปด้วยx-1ตัวแยกเลนซึ่งประกอบด้วยสัญลักษณ์ที่Lต่อเนื่องกันในแนวนอน :หลังจากใส่ตัวแยกเลนสระของเราควรมีลักษณะเช่นนี้: + + ---------- | | | | …

10
การเข้ารหัสอย่างง่ายสำหรับผู้ที่มีงบประมาณ จำกัด
ภาพรวม เป้าหมายของคุณคือการใช้การเข้ารหัส RC4 การเข้ารหัส RC4 ซึ่งคิดค้นโดย Ron Rivest (จากชื่อเสียงของ RSA) ได้รับการออกแบบให้มีความปลอดภัย แต่ง่ายพอที่จะนำมาใช้จากหน่วยความจำโดยทหารทหารในสนามรบ วันนี้มีการโจมตีหลายครั้งใน RC4 แต่มันยังคงใช้งานได้ในหลายสถานที่ในปัจจุบัน โปรแกรมของคุณควรยอมรับสตริงเดี่ยวที่มีทั้งกุญแจและข้อมูลบางส่วน มันจะถูกนำเสนอในรูปแบบนี้ \x0Dthis is a keythis is some data to encrypt ไบต์แรกแทนจำนวนคีย์ สามารถสันนิษฐานได้ว่าคีย์จะมีความยาวไม่เกิน 255 ไบต์และไม่น้อยกว่า 1 ไบต์ ข้อมูลอาจยาวโดยพลการ โปรแกรมของคุณควรประมวลผลคีย์จากนั้นส่งคืนข้อมูลที่เข้ารหัส การเข้ารหัสและถอดรหัส RC4 เหมือนกันดังนั้นการใช้คีย์เดียวกันเพื่อ "เข้ารหัส" ciphertext ควรส่งคืนข้อความธรรมดา RC4 ทำงานอย่างไร การเริ่มต้น การเริ่มต้นของ RC4 นั้นค่อนข้างง่าย อาร์เรย์ของรัฐที่ 256 ไบต์เริ่มต้นได้ทุกไบต์จาก 0 …

15
เครื่องขยายความจริง
หลายคนรู้ว่าเครื่องความจริงในการเขียนโปรแกรมคืออะไร แต่ถึงเวลาแล้วที่เราจะทำทุกอย่างให้เป็นระเบียบ ขอแนะนำเครื่องแห่งความจริงที่ขยายเพิ่ม! เครื่องจักรความจริงแบบขยายใช้สองสิ่งเป็นอินพุตจำนวนเต็มnและสตริงที่ไม่ว่างsเปล่า มันส่งออกs nครั้งด้วยช่องว่างต่อท้ายตัวเลือก อย่างไรก็ตามหากnมีค่าเท่ากับ0คุณจะต้องแสดงผลออกsจนกว่าโปรแกรมจะหยุดทำงานด้วยตนเองเช่นไม่ควรยกเลิก นอกจากนี้หากnเป็นจำนวนลบสตริงจะต้องมีการกลับรายการ ตัวอย่างเช่นมีs=helloและเอาท์พุทจะเป็นn=-1olleh วิธีการอินพุตมาตรฐานเอาต์พุตชนิดใดก็ได้ตราบใดที่สามารถจัดการกับอนันต์ได้ หากคุณมีคำตอบที่ไม่จัดการกับอนันต์คุณสามารถโพสต์ได้ถ้ามันน่าสนใจหรือในภาษาที่ไม่สามารถจัดการกับผลลัพธ์ที่ไม่มีที่สิ้นสุด กรณีทดสอบ n, s, output 5, "hello world", "hello worldhello worldhello worldhello worldhello world" 0, "PPCG", "PPCGPPCGPPCGPPCG..." -2, "truThY", "YhTurtYhTurt" 2000, "o", "oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo" นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ! นี่คือโพสต์ Sandbox ดั้งเดิม ทำการแก้ไขแล้ว ขอบคุณไปที่ @ComparSparklePony สำหรับการสร้างแนวคิดของการท้าทายนี้

13
วางเครื่องร่อน!
นี้: เป็นเครื่องร่อน ในเกมแห่งชีวิตของคอนเวย์เครื่องร่อนเป็นรูปแบบที่มีชื่อเสียงที่ลัดเลาะไปทั่วกระดาน สำหรับความท้าทายในวันนี้เรากำลังจะวาด ASCII art Game of Life Board และวางเครื่องร่อนไว้ กระดานที่เราเริ่มต้นคือ: |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| บอร์ดนี้ประกอบด้วยท่อ|และขีดล่าง_ทั้งหมดและเป็น 10x10 คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่รับค่าเป็นจำนวนเต็มสองตัวคือ 'x' และ 'y' และเอาท์พุทบอร์ดเดียวกันนี้ด้วยเครื่องร่อนที่พิกัดเหล่านั้น ตัวอย่างเช่นหากคุณมีเครื่องร่อนที่ตำแหน่ง(1, 1)(ดัชนี 0) คุณจะต้องแสดงผลลัพธ์ต่อไปนี้: |_|_|_|_|_|_|_|_|_|_| |_|_|*|_|_|_|_|_|_|_| |_|_|_|*|_|_|_|_|_|_| |_|*|*|*|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| คุณสามารถสันนิษฐานได้ว่าเครื่องร่อนจะไม่ถูกวางไว้นอกขอบเขตดังนั้นทั้ง x และ y จะอยู่ใน[0-7]ช่วงเสมอ คุณอาจเลือกที่จะใช้พิกัด 1 …

1
คลาย CUBE
คุณเคยดูรูปร่าง 3 มิติและคิดว่าเรามี 2 มิติ ลองสร้าง 3D เป็น 1D กันเถอะ! (ดูสิ่งที่ฉันทำที่นั่น?) งาน ให้การเป็นตัวแทน 2D ของคิวบ์ (เลย์เอาต์ด้านล่าง) แบนมันให้เป็นสตริงเดียวโดยอิงตามพอยน์เตอร์ The CUBE นี่คือเลย์เอาต์ของคิวบ์ที่เต็มไปด้วย no-ops ( ,) และพอยน์เตอร์ที่มุม ( <>v^/) Navigation Pointer (NP) เริ่มต้นโปรแกรมตามที่แสดง | NP begins here, moving right. V >,,,,,,,,,,,,,,,,,,v , ,, , , , , , , , , , , …

1
ควินที่ปลอดภัยในการหมุน
เขียนควินที่เหมาะสมซึ่งการหมุนทุกครั้งเป็นควินที่เหมาะสม ตัวอย่างเช่นหากซอร์สโค้ดของคุณคือabcdef: abcdef จะส่งออก abcdef bcdefa จะส่งออก bcdefa cdefab จะส่งออก cdefab defabc จะส่งออก defabc efabcd จะส่งออก efabcd fabcde จะส่งออก fabcde หมุนเวียน"จะทำโดยการแยกสตริงเป็นสองชิ้นและการย้อนกลับสั่งของพวกเขา" เกณฑ์การให้คะแนน นี่คือรหัสกอล์ฟ คำตอบที่สั้นที่สุดในการชนะไบต์ ช่องโหว่มาตรฐานใช้

1
ตัดหญ้าเป็นรูปสี่เหลี่ยมผืนผ้า
สนามหญ้าถูกกำหนดให้เป็นเขตข้อมูลรูปสี่เหลี่ยมผืนผ้าที่มีอักขระหนึ่งตัวล้อมรอบด้วยช่องว่างที่มองเห็นได้สองชั้น นี่หมายถึงสองบรรทัดด้านบนและสองบรรทัดด้านล่างและช่องว่างสองช่องทางด้านซ้าย (ด้านขวามีช่องว่างที่มองเห็นได้ดังนั้นคุณไม่จำเป็นต้องรวมไว้) ||||| ||||| ||||| สนามหญ้าที่ถูกตัดเป็นโครงสร้างที่คล้ายกันยกเว้นว่าตัวละครหลักเป็นเวอร์ชั่นย่อของอักขระตัวแรก ..... ..... ..... เครื่องตัดหญ้าเป็นอักขระสองตัวที่แตกต่างกันซึ่งแตกต่างจากอักขระสองตัว นี่คือตัวอย่างโดยมี=ด้านหลังของเครื่องตัดหญ้าและoด้านหน้า: =o เครื่องตัดหญ้าจะเคลื่อนที่ไปรอบ ๆ สนามหญ้าในแนวตั้งและสามารถหมุนด้านหน้าได้ เครื่องตัดหญ้าด้านบนอาจมีลักษณะใด ๆ ด้านล่างในระหว่างการเคลื่อนไหว: =o o= o = = o เครื่องตัดหญ้าสามารถเริ่มต้นที่ตำแหน่งด้านล่างใดก็ได้บนสนามหญ้าด้านล่าง ผู้ที่มีoอำนาจจะขับรถรอบสนามหญ้าตามเข็มนาฬิกา ผู้ที่มี0อำนาจจะขับไปรอบ ๆ สนามหญ้าทวนเข็มนาฬิกา = = 0 o =o|||||0= ||||| =0|||||o= o 0 = = อนิเมชั่นเริ่มต้นที่ 0 ในแต่ละวินาทีเครื่องตัดหญ้าจะเคลื่อนที่ไปข้างหน้าหนึ่งช่องว่างและตัดหญ้าที่ด้านหน้า เมื่อเครื่องตัดหญ้าหายไปหนึ่งจุดก็จะปรากฏขึ้นตัด เมื่อด้านหน้าเครื่องตัดหญ้าถึงรายการเจียระไนสุดท้ายในบรรทัด (และยังมีหญ้าเจียระไน) เครื่องตัดหญ้าจะหมุนกลับหนึ่งครั้งเพื่อดำเนินการตัดหญ้าปัจจุบันต่อไป (อยู่ในตำแหน่งตามเข็มนาฬิกา / …

21
ตำแหน่งว่างหรือไม่มีที่ว่าง?
เราทุกคนเห็นสัญญาณของโมเต็ลบอกเราว่ามีที่ว่างหรือไม่: โดยปกติแล้วตัวอักษรเหล่านี้จะมีตัวอักษรVACANCYสว่างขึ้นอย่างถาวรและมีตัวอักษรNO lit up หากไม่มีห้องใดในโมเต็ล ความท้าทาย โมเต็ลเฉลี่ยในสหรัฐอเมริกามี 200 ห้อง คุณจะเขียนโปรแกรม / ฟังก์ชั่นที่ใช้จำนวนเต็มT (สำหรับห้องที่ถ่ายไว้) เป็นอินพุตเท่านั้น โปรแกรมของคุณแล้วจะแสดงคำว่า NO VACANCYตัวอักษรของVACANCYจะถูกพิมพ์ด้วยสีแดง หากT ≥ 200 ตัวอักษรของNOจะถูกพิมพ์ด้วยสีแดง ตัวอย่างเช่นสมมติว่าa.outโปรแกรมของคุณและ "input" = อาร์กิวเมนต์บรรทัดคำสั่ง: (ฉันพิมพ์ผิดและระบบของฉันไม่สนใจขนาดตัวพิมพ์) กฎระเบียบ โปรแกรม / ฟังก์ชั่นของคุณจะต้องแสดง (หรือถ้าแลมบ์ดาคืนค่า ) สตริงที่แน่นอนNO VACANCYรวมถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ โปรแกรม / ฟังก์ชั่นของคุณอาจตั้งค่าสีพื้นหน้าของข้อความเป็นสีแดงไม่ใช่พื้นหลัง หากคุณต้องการคุณสามารถใช้รหัสหลบหนี ANSI เพื่อพิมพ์สีแดง - ใช้\x1b[31mงานได้ โปรแกรม / ฟังก์ชั่นของคุณอาจไม่เปลี่ยนสีข้อความของเชลล์หลังจากเสร็จสิ้น โปรแกรม / ฟังก์ชั่นของคุณจะต้องยุติลงตามปกติ โปรแกรม / …
17 code-golf  color 

21
เรียงลำดับตัวเลขตามการเกิดขึ้นครั้งแรกใน pi
รับจำนวนที่ไม่ใช่เชิงลบnเรียงลำดับตัวเลขของnโดยเกิดขึ้นครั้งแรกของพวกเขาในปี่ การป้อนข้อมูลสามารถนำมาผ่านการโต้แย้งฟังก์ชั่น cli หรือ STDIN และเป็นสตริงถ่าน [] หรือจำนวนเต็ม คุณสามารถส่งออกผ่านทางค่าตอบแทนสถานะทางออกหรือ STDOUT
17 code-golf  number  sorting  pi 

12
ไม่มีสิ่งใดเป็นอาหารกลางวันฟรี
... หรือไม่ ความท้าทายของคุณคือการแยกการเรียกเก็บเงินอาหารกลางวันของฉันซึ่งมีฐานราคาและเคล็ดลับ, ส่วนลด, คูปองและความพิเศษและดูว่าอาหารกลางวันของฉันคือ $ 0 หรือน้อยกว่า หากนี่คืออินพุต: 12.34 15 tip 25 discount 1.5 extra 2 coupon falseจากนั้นการส่งออกอาจจะมี นี่คือวิธีการทำงาน: 12.34 เป็นราคาฐาน 15 tipหมายถึงการเพิ่ม 15% ของผลรวม 25 discountหมายถึงการลบ 25% จากผลรวม 1.5 extraหมายถึงการเพิ่ม 1.5 ถึงผลรวม 2 couponหมายถึงการลบ 2 จากผลรวม อาจมีจำนวนเคล็ดลับส่วนลดคูปองและสิ่งเพิ่มเติมใด ๆ แต่จะมีราคาพื้นฐานหนึ่งราคาเสมอ จากนั้นเราทำ(12.34 * 1.15) * 0.75 + 1.5 - 2ผลลัพธ์ออกมาเป็น …

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