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

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

15
คำนวณพลังงานที่ซับซ้อน
The Rundown รับอินพุตxและyใด ๆทำการดำเนินการที่ซับซ้อนและพิมพ์ผลลัพธ์ที่สอดคล้องกัน โปรแกรมของคุณควรทำงานอย่างไร รับอินพุตxและyในรูปแบบz = x + yiค้นหาz i-z หากค่าจริงที่แท้จริงของz i-zมีขนาดใหญ่กว่าส่วนจินตภาพสัมบูรณ์ให้พิมพ์ส่วนจริง ในทางกลับกันสำหรับวิธีอื่น ๆ หากค่าทั้งสองเท่ากันให้พิมพ์ค่าใดค่าหนึ่ง ตัวอย่าง x: 2 y: 0 ดังนั้น: z = 2 z^(i-z) ~= 0.192309 + 0.159740i เนื่องจากส่วนจริงมีค่าสัมบูรณ์มากกว่าส่วนจินตภาพโปรแกรมจึงส่งกลับ 0.192309 ตัวอย่างเพิ่มเติม z = 1+i >> 0.5 z = i >> 1 z = 0.5 >> 1.08787 z = …

6
ไขว้กัน
ในตัวแปร quine นี้โปรแกรมของคุณจะต้องส่งออกซอร์สโค้ดของมันที่ถูกย้ายข้ามเส้นทแยงมุมจากด้านบนซ้ายไปขวาล่าง ตัวอย่างเช่น: โปรแกรมของคุณ บน สี่สาย เอาท์พุท yof ono u u r r p l r i o n g e r s a m ช่องว่างในผลลัพธ์ไม่ได้โดยพลการ ช่องว่างปรากฏในสองสถานการณ์: ที่มีช่องว่างในต้นฉบับ (เช่นระหว่างrและlในคอลัมน์ที่สี่) และตำแหน่งที่จำเป็นในการใส่อักขระ (เช่นช่องว่างทั้งหมดในคอลัมน์แรก) จำเป็นต้องใช้ทั้งสองและช่องว่างจะไม่ปรากฏที่ใดก็ได้ อื่นในการส่งออก บรรทัดใหม่ต่อท้ายเดียวในเอาต์พุตสามารถเลือกที่จะข้ามได้ การขึ้นบรรทัดใหม่ในซอร์สโค้ดไม่มีผลต่อเอาต์พุตและการขึ้นบรรทัดใหม่ในซอร์สโค้ดต้องถูกจัดการตามตัวอย่างด้านบน สมมติว่าตัวละครทุกตัวที่ไม่ได้ขึ้นบรรทัดใหม่นั้นมีความกว้างหนึ่งคอลัมน์และสูงหนึ่งแถวถึงแม้ว่าตัวอักษรเช่นแท็บอาจทำให้เกิดผลลัพธ์ที่น่าเกลียด โซลูชันของคุณต้องมีอย่างน้อยสองบรรทัดที่มีอักขระที่ไม่ใช่บรรทัดใหม่อย่างน้อยสองบรรทัดและต้องไม่เป็นแบบทรานสดิวเซอร์ของตนเอง (เอาต์พุตไม่สามารถเหมือนกับแหล่งที่มาได้) การโกงแบบควงที่อ่านจากไฟล์ที่มีซอร์สโค้ดของพวกเขาดึงข้อมูลจาก URL ใช้การสร้างแบบอิน - อินและไม่อนุญาต นี่คือรหัสกอล์ฟ: รหัสสั้นที่สุดในหน่วยชนะไบต์
10 code-golf  quine 

17
กำหนดจุดตัดของสองรายการ
เป้าหมายของคุณคือการคำนวณจุดตัดที่กำหนดไว้ของรายการจำนวนเต็มสองรายการ การแยกถูกกำหนดให้เป็นกลุ่มของจำนวนเต็มแบบไม่เรียงลำดับที่ไม่ซ้ำกันที่พบอย่างน้อยหนึ่งครั้งในรายการอินพุตทั้งสอง อินพุต อินพุตอาจอยู่ในรูปแบบที่ต้องการ (พารามิเตอร์ฟังก์ชัน, stdio ฯลฯ ) และประกอบด้วยรายการจำนวนเต็มสองรายการ คุณหลายคนไม่คิดอะไรเกี่ยวกับแต่ละรายการอื่น ๆ นอกเหนือจากนั้นอาจมีจำนวนเต็มจำนวนที่ไม่เป็นลบ (นั่นคือไม่ได้เรียงลำดับอาจเป็นไปได้ว่าอาจมีรายการซ้ำอาจมีความยาวต่างกันและอาจว่างเปล่า) มีการสันนิษฐานว่าจำนวนเต็มแต่ละรายการจะพอดีกับประเภทจำนวนเต็มที่เป็นภาษาท้องถิ่นของคุณซึ่งอาจมีความยาวมากกว่า 1 หลักทศนิยมและมีการลงชื่อ อินพุตตัวอย่าง: 1 4 3 9 8 8 3 7 0 10 1 4 4 8 -1 เอาท์พุต เอาท์พุทเป็นรายการที่เหมือนจำนวนเต็มแทนชุดจุดตัดของทั้งสองรายการเป็นรูปแบบที่ต้องการ (ค่าส่งคืน stdio ฯลฯ ) ไม่มีความต้องการที่จะเรียงลำดับผลลัพธ์แม้ว่าคุณจะยินดีที่จะจัดให้มีการใช้งานที่เกิดขึ้นกับการเรียงลำดับเสมอ ผลลัพธ์จะต้องเป็นชุดที่ไม่ได้รับคำสั่งที่ถูกต้อง (เช่นจะต้องไม่มีค่าซ้ำกัน) ตัวอย่างกรณีทดสอบ (โปรดสังเกตว่าลำดับของเอาต์พุตไม่สำคัญ): สองบรรทัดแรกคือรายการอินพุตบรรทัดที่สามคือเอาต์พุต (empty)หมายถึงรายการที่ว่างเปล่า (empty) (empty) (empty) 1000 (empty) …

1
ถอดรหัสบล็อกของ AES
วันนี้เป้าหมายของคุณคือการถอดรหัสข้อความลับโดยใช้การเข้ารหัส AES ให้รหัสและคีย์คุณจะถอดรหัสและพิมพ์ข้อความ โปรแกรมของคุณอาจเป็นภาษาใดก็ได้ มันจะถูกรันด้วยอินพุตบน stdin และเอาต์พุตบน stdout จะถูกตรวจสอบความถูกต้อง บรรทัดแรกของอินพุตบน stdin จะเป็นรหัส 16 ไบต์เข้ารหัสเป็นเลขฐานสิบหก บรรทัดที่สองของอินพุตบน stdin จะเป็นรหัส 16 ไบต์เข้ารหัสในเลขฐานสิบหก เอาต์พุตของโปรแกรมต้องเป็นข้อความ 16 ไบต์หลังจากถอดรหัส ciphertext โดยใช้ AES-128 พร้อมคีย์ที่กำหนด คุณต้องแสดงผลลัพธ์ที่แปลเป็น octets ASCII คุณอาจสันนิษฐานว่าผลลัพธ์ใด ๆ คือ ASCII ที่ถูกต้องหลังจากถอดรหัส คุณไม่สามารถใช้คุณลักษณะไลบรารี่ / บิวด์อินที่ใช้ AES ได้ คุณสามารถใช้คุณสมบัติดังกล่าวเพื่อแปลงระหว่างการเข้ารหัสฐานสิบหก / ไบนารี / ASCII รหัสที่สั้นที่สุดเป็นไบต์ชนะ ตัวอย่างอินพุตและเอาต์พุต: bd8ab53f10b3d38576a1b9a15cf03834 02c0ee126cae50ba938a8b16f0e04d23 โจมตีพรุ่งนี้ เเละอีกอย่าง: …

5
เขียนเกมที่สั้นที่สุดของ Alak
Alak ถูกคิดค้นโดยนักคณิตศาสตร์ AK Dewdney และอธิบายไว้ในหนังสือ 1984 Planiverse ของเขา กฎของ Alak นั้นเรียบง่าย: Alak เป็นเกมที่ผู้เล่นสองคนเล่นบนกระดานหนึ่งมิติพร้อมช่องสิบเอ็ดช่อง แต่ละสล็อตสามารถถือได้ทีละชิ้นมากที่สุด มีสองชนิดคือ "x" และ "o" x เป็นของผู้เล่นหนึ่งคน การกำหนดค่าเริ่มต้นของบอร์ดคือ: xxxx___oooo ผู้เล่นผลัดกันขยับ ในแต่ละตาแหน่งผู้เล่นแต่ละคนสามารถเคลื่อนที่ได้เพียงชิ้นเดียวครั้งเดียว ผู้เล่นไม่สามารถผ่านขึ้นไปได้ ผู้เล่นสามารถย้ายชิ้นส่วนใดก็ได้ของเขาไปยังช่องว่างถัดไปทางซ้ายหรือขวาซึ่งอาจเกี่ยวข้องกับการกระโดดข้ามช่องว่าง ผู้เล่นไม่สามารถขยับชิ้นส่วนออกจากด้านข้างของกระดาน หากการเคลื่อนไหวสร้างรูปแบบที่ชิ้นส่วนของฝ่ายตรงข้ามล้อมรอบทั้งสองด้านโดยสีของผู้เสนอญัตติสองชิ้น (โดยไม่มีช่องว่างว่างที่ไม่ว่าง) จากนั้นชิ้นส่วนที่ล้อมรอบจะถูกลบออกจากกระดาน เป้าหมายของเกมคือการลบชิ้นส่วนของฝ่ายตรงข้ามทั้งหมดที่จุดสิ้นสุดเกม การเอาออกทั้งหมด - แต่ - หนึ่งจบเกมเช่นกันเนื่องจากคู่ต่อสู้ไม่สามารถล้อมคุณด้วยชิ้นเดียวและจะสูญเสียภายในไม่กี่เคลื่อนไหวเสมอ ฉันพบเกมนี้ออนไลน์และสงสัยว่า: มันสามารถเล่นกอล์ฟได้หรือไม่? กติกาการเล่นกอล์ฟ รหัสของคุณจะต้องเป็นไปตามกฎทั้งหมดในเกมการจับการเคลื่อนไหวที่เหมาะสมเป็นต้น (ยกเว้นเพียงคุณไม่ต้องเพิ่มบอท แต่คุณต้องมีผู้เล่นทั้งสองที่ควบคุมอย่างใดและผู้เล่นคนหนึ่งต้องเป็นมนุษย์) ข้อมูลจะต้องย้ายชิ้นส่วนที่ tile X ถึง tile Y หรือออก ตัวอย่างเช่นคุณสามารถใช้1 …

4
เคล็ดลับสำหรับการเล่นกอล์ฟใน OCaml
แรงบันดาลใจจากการแบ่งประเภทของ 'เคล็ดลับสำหรับการเล่นกอล์ฟในภาษา xyz' อื่น ๆ ตามปกติโปรดแนะนำเคล็ดลับเฉพาะสำหรับ OCaml และไม่ใช่การเขียนโปรแกรมทั่วไป กรุณาหนึ่งเคล็ดลับต่อคำตอบ
10 code-golf  tips 

6
สร้างแป้นพิมพ์ลัดสำหรับเมนู
ปุ่มลัดเมนู ตามเนื้อผ้าเมนูผู้ใช้สามารถเข้าถึงได้โดยใช้แป้นพิมพ์ลัดเช่นAlt + (a letter)หรือแม้แต่กดปุ่มตัวอักษรเมื่อกล่องข้อความทั้งหมดไม่มีการโฟกัส ( สไตล์gmail ) งานของคุณ เมื่อได้รับรายการเมนูเป็นอินพุตงานของคุณคืออนุญาตให้แต่ละรายการเมนูมีตัวอักษรลัดที่เหมาะสม เขียนฟังก์ชั่นหรือโปรแกรมที่รับชุดคำ - รายการเมนู (เป็นอาร์เรย์ของสตริงหรือเทียบเท่าภาษาของคุณ) และส่งคืนพจนานุกรมหรือ hashmap จากตัวอักษรตัวเดียวไปยังรายการเมนู คุณสามารถใช้พารามิเตอร์และส่งคืนค่าหรือใช้ STDIN และส่งออกผลลัพธ์ของคุณไปยัง STDOUT คุณไม่ได้รับอนุญาตให้สันนิษฐานว่าตัวแปรโกลบอล / ขอบเขตได้รับการป้อนข้อมูลเรียบร้อยแล้ว อัลกอริทึมเพื่อกำหนดตัวอักษรที่เหมาะสม โดยทั่วไปมันเป็นตัวอักษรตัวแรกของคำ ดูสมมติฐานและตัวอย่างด้านล่าง (a letter) + (a number)ในกรณีที่ตัวอักษรของรายการทั้งหมดจะไม่สามารถใช้ทางลัดจะ ตัวอักษรใดที่คุณเลือกจากรายการนั้นเป็นกฎเกณฑ์ ตัวเลขควรเริ่มต้นจาก 0 และเพิ่มขึ้นทีละ 1 - เช่นนั้นทางลัดทั้งหมดจะไม่ซ้ำกัน ดูตัวอย่างที่สามด้านล่าง สมมติฐาน การป้อนข้อมูลจะเป็นชุดคือไม่มีการซ้ำทุกรายการไม่ซ้ำกัน ความยาวของอินพุตอาจเป็นจำนวนเต็มใด ๆ ที่ไม่เป็นลบ (มากถึง MAX_INT ของภาษาของคุณ) การพิจารณาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่: อินพุตเป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ …
10 code-golf  string 

14
ตัวแก้ฟังก์ชันเชิงเส้นจากสองจุด (x, y)
งาน เขียนฟังก์ชัน L () ที่รับสอง Tuple อาร์กิวเมนต์ของพิกัดในรูปแบบ (x, y) และส่งกลับฟังก์ชันเชิงเส้นตามลำดับในรูปแบบ (a, c) โดยที่ a คือประสิทธิภาพร่วมของเทอม x และ c คือค่าตัดแกน y คุณสามารถสันนิษฐานได้ว่าอินพุตจะไม่เป็นเส้นตั้งฉากกับแกน x และอินพุตทั้งสองนั้นเป็นจุดแยกต่างหาก เกณฑ์การให้คะแนน นี่คือ Code Golf: โปรแกรมที่สั้นที่สุดชนะ โปรดทราบ: ไม่มีการใช้ฟังก์ชันทางคณิตศาสตร์ใด ๆ นอกเหนือจากตัวดำเนินการพื้นฐาน (+, -, /, *) ตัวอย่าง นี่คือทางออกที่ไม่ตีกอล์ฟของฉันใน Python def L(Point1, Point2): x = 0 y = 1 Gradient = …
10 code-golf 

3
เคล็ดลับสำหรับการเล่นกอล์ฟใน Io
สิ่งใดที่คุณมีเคล็ดลับทั่วไปสำหรับการเล่นกอล์ฟในไอโอ ? ฉันกำลังมองหาความคิดที่สามารถนำไปใช้กับปัญหารหัสกอล์ฟโดยทั่วไปซึ่งอย่างน้อยค่อนข้างเฉพาะกับ Io (เช่น "ลบความคิดเห็น" ไม่ใช่คำตอบ) กรุณาโพสต์หนึ่งเคล็ดลับต่อคำตอบ
10 code-golf  tips 

7
รหัสสี CSS แบบสุ่ม
บล็อกนี้โพสต์เกี่ยวกับการสร้างรหัสสี CSS แบบสุ่มใน JavaScript มีหลายวิธีในการสร้างสีแบบสุ่มใน JavaScript สั้นที่สุดที่ฉันสามารถหาคือ: '#'+(Math.random()*0xffffff).toString(16).slice(-6) หากคุณไม่คุ้นเคยกับเอกสารสีอ่านรหัส CSS ที่นี่ เราทำได้ดีกว่านี้ไหม แล้วภาษาอื่น ๆ ล่ะ?
10 code-golf  random  css 

16
รหัสที่สั้นที่สุดสำหรับเอาต์พุตที่ยาวที่สุด [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว อันนี้ค่อนข้างเรียบง่าย เขียนโปรแกรมที่สั้นที่สุดที่คุณสามารถทำได้ในขณะที่สร้างผลลัพธ์มากที่สุด เพื่อให้สนุกโปรแกรมที่สร้างเอาต์พุตไม่สิ้นสุดจะถูกตัดสิทธิ์ ผู้ชนะคือโปรแกรมที่มีขนาดเอาต์พุต / อัตราส่วนขนาดโค้ดใหญ่ที่สุด ผลลัพธ์ขึ้นอยู่กับสิ่งที่ใช้งานได้บนคอมพิวเตอร์ของฉันซึ่งเป็น Mac ที่ใช้ Mac OS X 10.7.5 พร้อมด้วยหน่วยความจำ Intel Core i5 และ 8GB
10 code-golf 

7
Code-Golf: ลำดับ Farey (I)
ท้าทาย ในภารกิจนี้คุณจะได้รับจำนวนเต็ม N (น้อยกว่า 10 ^ 5) ออกลำดับ Fareyของคำสั่ง N อินพุต N ถูกกำหนดในบรรทัดเดียวอินพุตถูกยกเลิกโดย EOF อินพุต 4 3 1 2 เอาท์พุต F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 = {0/1, 1/1} F2 = {0/1, 1/2, 1/1} ข้อ จำกัด จำนวนอินพุตไม่เกิน 10 ^ …
10 code-golf  math  code-golf  math  code-golf  number  number-theory  code-golf  math  arithmetic  repeated-transformation  code-golf  geometry  popularity-contest  code-golf  code-golf  tips  haskell  math  fastest-algorithm  code-golf  combinatorics  code-golf  math  polynomials  rational-numbers  code-golf  code-golf  popularity-contest  javascript  code-golf  kolmogorov-complexity  code-golf  code-golf  math  combinatorics  permutations  code-challenge  restricted-source  random  array-manipulation  code-challenge  generation  code-golf  code-golf  ascii-art  arithmetic  division  code-challenge  number  code-golf  math  number  binary  code-golf  ascii-art  code-golf  interpreter  stack  code-golf  internet  networking  code-golf  math  code-golf  ascii-art  code-golf  math  sequence  code-golf  hello-world  restricted-source  code-golf  ascii-art  code-golf  geometry  code-golf  kolmogorov-complexity  pi  code-golf  math  combinatorics  permutations  code-golf  math  code-challenge  ascii-art  code-golf  string  code-golf  quine  code-golf  math  floating-point  golfscript  code-golf  string  code-golf  sliding-puzzle  code-challenge  arithmetic  code-golf  math  code-golf  geometry  optimized-output 

6
วันที่ในเวลา Usenet คืออะไร?
กันยายน 1993 เป็นที่รู้จักใน Usenet ในเดือนกันยายนที่ไม่สิ้นสุด ตัวอย่างเช่นวันที่มีการโพสต์คำถามนี้คือวันเสาร์, กันยายน 8740, 1993 โปรแกรมหรือฟังก์ชั่นของคุณควรใช้วันที่แบบคริสต์ศักราช (พร้อมปีบวก) เป็นอินพุตและส่งคืนวันที่เดียวกับผลลัพธ์ถ้าเป็นก่อนกันยายน 1993 หรือวันที่ในปฏิทินกันยายน 1993 หากหลังจากนั้น คุณอาจยอมรับ YYYY-MM-DD, YYYY / MM / DD, MM / DD / YYYY, DD / MM / YYYY, D-Monthnameabbr-YYYY หรือรูปแบบที่นิยมอื่น ๆ ที่ใช้ครบทั้งปี (ตรงข้ามกับ ปีแบบโมดูโล 100) คุณต้องยอมรับรูปแบบที่คุณเลือกเท่านั้น รูปแบบผลลัพธ์ต้องตรงกับรูปแบบอินพุต อินพุตตัวอย่าง→เอาท์พุท: วันอาทิตย์ที่ 6 สิงหาคม 2560 →วันอาทิตย์ที่ 8741 กันยายน …
9 code-golf  date 

3
Fizz Buzz Lightyear
จากความท้าทายที่เกี่ยวข้องกับ FizzBuzz จำนวนมาก (สองรายการ) ที่โพสต์เมื่อเร็ว ๆ นี้ทาง PPCG ฉันถูกล่อลวงให้คิดหาตัวเอง ดูเถิด ... Fizz Buzz Lightyear เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้เป็นจำนวนเต็มnและพิมพ์ออกมาFizzBuzzสำหรับหารจำนวนใด ๆ โดย 15 Fizzสำหรับหารจำนวนใด ๆ โดย 3 และBuzzสำหรับหารจำนวนใด ๆ โดย 5 ขึ้นไป n(และรวม) เอาต์พุตสำหรับทุกคนiจะต้องตามด้วยการขึ้นบรรทัดใหม่ แต่มีการบิด! ทุกครั้งที่คุณพิมพ์งานBuzzBuzz Lightyear ในท้ายที่สุดจะได้รับสายเรียกเข้าและข้อผิดพลาดในโปรแกรมของคุณ จากนั้นเขาก็แนะนำตัวเอง - แต่เนื่องจากเขาชนพื้นดินสิ่งที่เขาพูดบางอย่างปะปนกับเอาท์พุทของโปรแกรมของคุณ: Buzz Lightyear, Space Ranger, Universe Protection Unit. FizzBuzz Lightyear, Space Ranger, Universe Protection Unit. …
9 code-golf 

3
ลำดับพจนานุกรมภาษาเกาหลีเหนือ
วัตถุประสงค์ ระบุสตริงของพยางค์อังกูลเรียงลำดับตัวอักษรตามลำดับพจนานุกรมของเกาหลีเหนือ พยางค์อังกูลเบื้องต้น อังกูล (한글) เป็นระบบการเขียนภาษาเกาหลีที่คิดค้นโดย Sejong the Great พยางค์ฮันกึลได้รับการจัดสรรในจุด Unicode U + AC00 - U + D7A3 พยางค์อังกูลประกอบด้วยพยัญชนะเริ่มต้นสระและพยัญชนะตัวสุดท้าย พยัญชนะเริ่มต้นคือ: ㄱ ㄲ ㄴ ㄷ ㄸ ㄹ ㅁ ㅂ ㅃ ㅅ ㅆ ㅇ ㅈ ㅉ ㅊ ㅋ ㅌ ㅍ ㅎ เสียงสระคือ: ㅏ ㅐ ㅑ ㅒ ㅓ ㅔ ㅕ ㅖ ㅗ ㅘ …

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