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

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

27
กริดไบนารี 16 บิต
กำหนดจำนวนเต็ม 16 บิตที่ไม่ได้ลงนามใด ๆ แปลงตัวเลขทศนิยม (เช่น base-10) เป็นตาราง 4x4 ASCII ของบิตโดยบิตที่สำคัญที่สุด (MSB) ที่มุมบนซ้ายบิตที่มีนัยสำคัญน้อยที่สุด (LSB) ที่ ด้านล่างขวาอ่านจากนั้นกดลง (เช่นข้อความภาษาอังกฤษ) ตัวอย่าง อินพุต: 4242 +---+---+---+---+ | | | | # | +---+---+---+---+ | | | | | +---+---+---+---+ | # | | | # | +---+---+---+---+ | | | # | | +---+---+---+---+ อินพุต: …

19
ทุกอย่างเกี่ยวกับไบนารีพื้นฐาน
กรุณาแก้ตัวชื่อบทลงโทษ นี่คือคำถามที่เป็นแรงบันดาลใจอยากรู้อยากเห็นของทรัพย์สิน 82000 ในนั้นผู้เขียนชี้ให้เห็นว่าจำนวน 82000 เป็นเลขฐานสองในฐาน 2, 3, 4 และ 5 โพสต์แล้วโพสต์คำถาม "มีจำนวนที่เป็นเลขฐานสองในฐาน 2, 3, 4, 5 และ 6 "? (สำหรับคนที่อยากรู้อยากเห็นฉันได้ตรวจสอบค่ามากถึง 10 ^ 1,000,000 และคำตอบก็คือไม่) สิ่งนี้ทำให้ฉันคิดว่า: รับจำนวนฐานมันคืออะไรในฐาน? จำนวนที่น่าสงสัย 82000 ของเราเป็นเลขฐานสองในหกฐาน: Base 2 = 10100000001010000 Base 3 = 11011111001 Base 4 = 110001100 Base 5 = 10111000 Base 81999 = 11 …

11
คุณเห็นกี่ตึก
คำถามนี้ขึ้นอยู่กับปริศนาตัวต่อตัวเลข (ซึ่งรู้จักกันในชื่อตึกระฟ้า) ซึ่งคุณสามารถเล่นออนไลน์ได้ เป้าหมายของคุณคือใช้วิธีแก้ปริศนาและหาเบาะแส - จำนวนหอคอยที่มองเห็นได้ตามแต่ละแถวและคอลัมน์ นี่คือรหัสกอล์ฟดังนั้นจำนวนไบต์ที่น้อยที่สุดจึงชนะ วิธีการทำงานของ Towers วิธีการแก้ปริศนา Towers เป็นตารางละติน - เป็นn*nตารางซึ่งในทุกแถวและคอลัมน์ที่มีการเปลี่ยนแปลงของตัวเลขที่ผ่าน1 nตัวอย่างสำหรับn=5คือ: 4 3 5 2 1 5 4 1 3 2 1 5 2 4 3 2 1 3 5 4 3 2 4 1 5 แต่ละแถวและคอลัมน์มีป้ายกำกับที่ปลายแต่ละด้านเช่น: 2 3 1 4 5 v v v v …
29 code-golf  grid 

30
หนา ๆ กับสายเรียบ
พิจารณาสตริงที่มีความยาว N เช่นPeanut ButterN = 13 ขอให้สังเกตว่ามีอักขระ N-1 คู่ที่อยู่ติดกันในสตริง สำหรับPeanut Butterครั้งแรกของ 12 คู่เป็นPeที่สองคือการมีที่ผ่านมาeaer chUnkyเมื่อคู่เป็นตัวละครที่แตกต่างกันส่วนใหญ่สตริงมีคุณภาพอ้วนเช่น เมื่อคู่เหล่านี้ส่วนใหญ่จะเป็นตัวละครเดียวกันสตริงที่มีคุณภาพได้อย่างราบรื่นเช่น sssmmsss กำหนดความหนาของสตริงเป็นอัตราส่วนของจำนวนคู่ที่มีอักขระสองตัวที่แตกต่างกันต่อจำนวนคู่ทั้งหมด (N-1) กำหนดความนุ่มนวลของสตริงให้เป็นอัตราส่วนของจำนวนคู่ที่มีอักขระสองตัวที่เหมือนกันต่อจำนวนคู่ทั้งหมด (N-1) ตัวอย่างเช่นPeanut Butterมีเพียงหนึ่งคู่ที่มีอักขระเหมือนกัน ( tt) ดังนั้นความลื่นของมันคือ 1/12 หรือ 0.0833 และความหนาของมันคือ 11/12 หรือ 0.9167 สตริงและสตริงที่ว่างเปล่าที่มีอักขระเพียงตัวเดียวเท่านั้นที่ถูกกำหนดให้มีความราบรื่น 100% และเป็นก้อน 0% ท้าทาย เขียนโปรแกรมที่ใช้สตริงที่มีความยาวตามอำเภอใจและส่งผลให้อัตราส่วนความต่อเนื่องหรือความราบรื่นเป็นค่าทศนิยม รับอินพุตผ่าน stdin หรือบรรทัดคำสั่งหรือคุณอาจเขียนฟังก์ชันที่รับสตริง คุณสามารถสมมติว่าสตริงอินพุตมีอักขระ ASCII ที่พิมพ์ได้เท่านั้น(และเป็นบรรทัดเดียว) พิมพ์ทศนิยมเพื่อ stdout ถึง 4 หรือมากกว่าตำแหน่งทศนิยมหรือคุณสามารถเลือกที่จะกลับมาถ้าคุณเขียนฟังก์ชั่น ตำแหน่งทศนิยมที่ถ่ายทอดไม่มีข้อมูลที่ไม่จำเป็นเช่นจะปรับแทน00.0000 …

12
ปริศนาค้นหาคำ
ให้ข้อความสี่เหลี่ยมเป็นตัวต่อการค้นหาคำและสตริงการค้นหาพิจารณาว่าข้อความนั้นมีสตริงการค้นหาหรือไม่ สตริงการค้นหาอาจปรากฏขึ้น: แนวนอนแนวตั้งหรือแนวทแยงมุม ไปข้างหน้าหรือข้างหลัง คุณสามารถเขียนฟังก์ชันหรือโปรแกรมและรับสองสายเป็นอินพุตผ่านอาร์กิวเมนต์ของฟังก์ชัน ARGV หรือ STDIN เอาต์พุตควรเป็นผลลัพธ์ที่เป็นจริงหรือเป็นเท็จซึ่งสามารถส่งคืนจากฟังก์ชันหรือเขียนไปยัง STDOUT สมมติว่าข้อความนั้นจะมีอักขระ ASCII ที่พิมพ์ได้โดยอิสระ (รหัสฐานสิบหก 20 ถึง 7E) และตัวแบ่งบรรทัด ตัวอักษรเป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ คุณอาจสมมติว่าข้อความที่ป้อนเป็นรูปสี่เหลี่ยมผืนผ้านั่นคือทุกบรรทัดมีความยาวเท่ากัน คุณอาจป้อนข้อมูลให้จบลงด้วยการขึ้นบรรทัดใหม่หรือไม่ (ถ้าเป็นเรื่องสำคัญสำหรับการส่งของคุณ) นี่คือรหัสกอล์ฟคำตอบที่สั้นที่สุด (เป็นไบต์) ชนะ ตัวอย่าง การใช้กริดนี้จากบทความของ Wikipedia เกี่ยวกับการค้นหาคำว่าเป็นข้อมูลแรก: WVERTICALL ROOAFFLSAB ACRILIATOA NDODKONWDC DRKESOODDK OEEPZEGLIW MSIIHOAERA ALRKRRIRER KODIDEDRCD HELWSLEUTH สตริงการค้นหาต่อไปนี้ควรให้ผลลัพธ์จริงหรือเท็จตามลำดับ: Truthy: RANDOM, VERTICAL, HORIZONTAL, WORDSEARCH, WIKIPEDIA, TAIL Falsy: WordSearch, CODEGOLF, …

8
คุณอยู่ในห้องที่ใหญ่ที่สุดเหรอ?
บทนำ คุณเพิ่งตอบรับข้อเสนองานที่ บริษัท ซอฟต์แวร์สวย ๆ คุณพอใจกับขนาดของสำนักงานของคุณ แต่คุณมีขนาดใหญ่ที่สุดสำนักงานหรือไม่? มันยากที่จะบอกจากเพียงแค่ดวงตาของเพื่อนร่วมงานของคุณเมื่อคุณหยุด วิธีเดียวที่จะเข้าใจสิ่งนี้คือการตรวจสอบพิมพ์เขียวสำหรับอาคาร ... งานของคุณ เขียนโปรแกรมสคริปต์หรือฟังก์ชั่นที่ใช้แผนผังชั้นอาคารของคุณและระบุว่าสำนักงานของคุณใหญ่ที่สุดหรือไม่ แผนชั้นง่ายต่อการอ่านเพราะอาคารเป็นnโดยnตาราง อินพุตจะประกอบด้วยบรรทัดที่มีการ จำกัดn + 1 \nบรรทัดแรกจะมีหมายเลขnอยู่ ถัดไปnเส้นจะแขวะสำหรับอาคาร อินพุตตัวอย่างง่ายๆ: 6 ...... . . . .X . . . . . . . . ...... กฎสำหรับผังมีดังนี้: .(ASCII 46) จะถูกใช้เพื่อแสดงถึงกำแพง (Space [ASCII 32]) จะถูกใช้เพื่อแสดงพื้นที่ว่าง คุณเป็นตัวแทนของX(ASCII 88) คุณอยู่ในสำนักงานของคุณ แปลนห้องจะเป็นnเส้นโดยแต่ละตัวมีอักขระnตัว ตัวอาคารล้อมรอบด้วยกำแพงทุกด้าน นี่หมายความว่าอินพุตบรรทัดที่ 2 …

6
ข้อความภาพสามมิติที่ซ่อนอยู่
คุณต้องสร้างภาพสามมิติของข้อความตามสตริงอินพุตที่มีย่อหน้าของข้อความบรรทัดว่างแล้วข้อความที่ซ่อนอยู่ ผลลัพธ์จะปรากฏเป็นคู่ย่อหน้าหนึ่งย่อหน้าที่มีระยะห่างต่างกันทำให้เกิดผลของการยกขึ้นเมื่อดูภาพสามมิติ (คำอธิบายสามารถพบได้ที่นี่ ) ตัวอย่าง การป้อนข้อมูล: I invented vegetarianism. It is a diet involving no meat, just vegetables. It is also common in cows - they are awesome. vegetarianism. is awesome. เอาท์พุท: I invented I invented vegetarianism. vegetarianism. It is a diet It is a diet involving no involving no …
29 code-golf 

30
Mirage ของคนฉลาด
กาลครั้งหนึ่งฉันได้อ่านคำถาม / คำตอบนี้เกี่ยวกับ Quora มีโปรแกรมเมอร์ที่มีองศาวิทยาศาสตร์คอมพิวเตอร์ซึ่งไม่สามารถผ่านการทดสอบ FizzBuzz ได้หรือไม่ รหัสนี้เป็นคำตอบที่ชัดเจน for i in range(1, 100): if i % 3 == 0 and i % 5 == 0: print "FizzBuzz" elif i % 3 == 0: print "Fizz" elif i % 5 == 0: print "Buzz" else: print i แน่นอนว่าFizzBuzzได้รับการตีกอล์ฟให้ตาย แต่นั่นไม่ใช่สิ่งที่คำถามนี้เกี่ยวกับ ในความเห็นมีคนพูดว่าคำตอบที่ชัดเจนนี้ดีมากเพราะมันง่ายที่จะเพิ่มเงื่อนไขพิเศษเช่นพิมพ์ "Jazz" …
29 popularity-contest  code-challenge  word  popularity-contest  string  grid  language-design  code-golf  source-layout  math  fastest-algorithm  assembly  code-golf  json  code-golf  arithmetic  array-manipulation  code-golf  ascii-art  code-golf  crossword  code-golf  string  restricted-complexity  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  decision-problem  balanced-string  syntax  code-golf  grid  puzzle-solver  hexagonal-grid  code-golf  math  number  sequence  code-golf  string  decision-problem  code-golf  cryptography  king-of-the-hill  code-challenge  fastest-code  code-golf  number  code-golf  code-golf  string  code-golf  cryptography  king-of-the-hill  java  code-golf  number-theory  base-conversion  code-golf  code-golf  array-manipulation  code-golf  array-manipulation  sorting  code-challenge  restricted-source  quine  code-golf  tips  python  king-of-the-hill  code-golf  source-layout  fractal  code-golf  tips  game  king-of-the-hill  path-finding  grid  code-golf  kolmogorov-complexity  natural-language  code-golf  tips  python  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  number  combinatorics  random  integer-partitions  code-golf  string  code-golf  vim  comment  code-golf  combinatorics  counting  code-challenge  rosetta-stone  code-golf  combinatorics  sequence  subsequence  code-golf  code-challenge  restricted-source  primes  printable-ascii  popularity-contest  graphical-output  image-processing 

5
ตรวจสอบว่าตัวอักษรสามตัวสามารถสร้าง "ลูกบาศก์ Godel-Escher-Bach"
คำถามนี้ได้รับแรงบันดาลใจจากปกหนังสือ "Godel, Escher, Bach": ความท้าทายที่นี่คือการเขียนฟังก์ชั่นที่บอกว่าตัวอักษรที่กำหนดสามตัวสามารถสร้างรูปปั้น 3 มิติที่สามารถอ่านได้จากสามด้าน สำหรับแบบฝึกหัดนี้ตัวอักษรเดียวที่คุณสามารถใช้ได้คือบิตแมป 26 5px * 5px: หรือเป็นเลขฐานสอง (A ถึง Z): 01110 11110 01111 11110 11111 11111 11111 10001 11111 11111 10001 10000 10001 10001 01110 11110 01110 11110 01111 11111 10001 10001 10001 10001 10001 11111 10001 10001 10000 10001 10000 10000 10000 10001 …
29 code-golf  3d 

16
เอาท์พุทภาพของรหัสที่มาของคุณ (ไม่ค่อนข้าง -a-Quine)
กอล์ฟรหัส: พิมพ์ภาพของรหัสที่มา ความต้องการ ต้องเอาท์พุทอิมเมจของซอร์สโค้ดเองไม่ใช่เวอร์ชันที่เก็บไว้ที่อื่นและดึงข้อมูลในเวลาทำงาน รหัสจะต้องอ่านได้ชัดเจนเพียงพอที่จะคัดลอกด้วยมือและทำซ้ำผลลัพธ์ สามารถใช้รูปแบบภาพใดก็ได้ โบนัส -10% ของคะแนนถ้าคุณอนุญาตให้ใช้มากกว่าหนึ่งรูปแบบเอาต์พุต -15% ถ้ารหัสของคุณยังควิน 'ความจริง' ie มันไม่ได้อ่านซอร์สโค้ด แต่ซอร์สโค้ดถูกฝังอยู่ (ดูตัวอย่างที่นี่ ) -30% ถ้ารหัสของคุณเป็น quine ที่เข้มงวด - นั่นคือภาพของรหัสจะถูกฝังอยู่ในโปรแกรม (โซลูชั่น Piet ฉันกำลังมองคุณอยู่)

23
พิมพ์หมายเลขที่ปลอดภัยต่อการหมุน
พื้นหลัง คุณกำลังทำงานให้กับผู้ผลิตเกมกระดานบางเกมและจำเป็นต้องผลิตแผ่นไม้ที่มีตัวเลขตั้งแต่ 0 ถึงn ที่สลักไว้สำหรับเกมบางเกม แต่ไม่ต้องกังวลใจต่อกระเบื้องบางส่วนจะกลายเป็นแยกไม่ออกเช่นและ6 9เพื่อหลีกเลี่ยงนี้คุณมีเพื่อให้ตัวเลขที่จะสับสนกับคนอื่น ๆ (และเฉพาะผู้) มีจุด disambiguating เช่นคุณจะมีกระเบื้องเหมือนหรือ9.6089. น่าเสียดายที่คุณต้องใช้อุปกรณ์แกะสลักไม้แบบเก่า แต่ยังสามารถตั้งโปรแกรมได้ซึ่งอินเทอร์เฟซเสียจนคุณต้องเข้ารหัสตัวละครทุกตัวของโปรแกรมด้วยมือในกระบวนการที่น่าเบื่ออย่างไม่น่าเชื่อ โชคดีที่อุปกรณ์เข้าใจภาษาการเขียนโปรแกรมที่มีอยู่ทั้งหมด ดังนั้นคุณกำลังมองหาโปรแกรมที่สั้นที่สุดที่จะพิมพ์กระเบื้องดังกล่าว งานจริง เขียนโปรแกรมสั้นที่สุดที่: รับจำนวนเต็มบวกnเป็นอินพุต การอ่านอินพุตนั้นขึ้นอยู่กับคุณอย่างไร พิมพ์ตัวเลขแต่ละตัวตั้งแต่ 0 ถึงn (รวม 0 และn ) หนึ่งครั้งตามลำดับที่คุณเลือกโดยคั่นด้วยอักขระช่องว่างเดียว (รวมถึงบรรทัดใหม่) ตัวเลขจะถูกพิมพ์โดยไม่มีศูนย์นำหน้า ผนวกจุด (.) กับทุกหมายเลขที่เปลี่ยนเป็นตัวเลขอื่นหมายเลขที่ถูกต้องเมื่อหมุนโดยπ (180 °) แม้ว่าจำนวนนั้นจะมากกว่าn แบบอักษรของคุณ 0 และ 8 คือการหมุนแบบสมมาตรและ 9 คือการหมุน 6 แบบที่ 2 และ 5 นั้นแตกต่างกันตามการหมุน 1 …
29 code-golf  number 

2
ASCII art 3D StreetView
การป้อนข้อมูล: คุณได้รับชุดจำนวนเต็ม (ป้อนผ่าน stdin หรือพรอมต์) เลขจำนวนเต็มทุกคู่ในชุดนี้แสดงถึงความกว้างของอาคาร [ช่วงที่ถูกต้อง: 1..10] และสูง [ช่วงที่ถูกต้อง: 0..10] สมมติว่าอินพุตเป็นรูปแบบที่ถูกต้อง ตัวอย่างอินพุต (บรรทัดที่สองใช้สำหรับการสาธิตเท่านั้น): 1 2 1 1 1 0 2 4 1 3 1 2 2 1 WHWHWHWHWHWHWH ผลลัพธ์ตัวอย่างที่สอดคล้องกัน: ______ / ______ / | | | | __ | | / __ / | __ | | | | …

30
พิจารณาว่า Strings เท่ากันหรือไม่
งานของคุณคือง่าย ตรวจสอบว่าหนึ่งสายเท่ากับอื่น ๆ (ไม่ใช่ที่อยู่ค่า) โดยไม่ต้องใช้ของผู้ประกอบการความเท่าเทียมกัน (เช่น==, ===หรือ.equal()) หรือความไม่เท่าเทียมกัน ( !=, !==) อะไรที่คล้ายกันสำหรับภาษาอื่น ๆ ซึ่งหมายความว่าทุกที่! คุณไม่สามารถใช้โอเปอเรเตอร์เหล่านี้ได้ทุกที่ในรหัส คุณอาจจะ แต่คุณใช้สลับเช่นที่คุณไม่ได้โดยตรงเปรียบเทียบ!expexp != with something else นอกจากนี้คุณไม่สามารถใช้ฟังก์ชั่นใด ๆ เช่นstrcmp , strcasecmpเป็นต้น ในฐานะที่เป็นผู้ประกอบการเปรียบเทียบ ( >=, <=, >, <) พวกเขายังไม่ได้รับอนุญาต ฉันรู้ว่าคำตอบบางอย่างรวมถึงสิ่งนี้ แต่ฉันอยากเห็นคำตอบเพิ่มเติมที่ไม่ได้ทำให้ผู้ปฏิบัติงานเสมอภาคกัน ตัวอย่างการใช้ PHP จะแสดง: <?php $a = 'string'; $b = 'string'; $tmp = array_unique(array($a, $b)); return …
29 code-golf 

21
นับจาก 1 ถึง 100 …ในเลขโรมัน
เขียนโปรแกรมที่มีค่าตั้งแต่ 1 ถึง 100 ในรูปแบบตัวเลขโรมันและพิมพ์ตัวเลขเหล่านี้ด้วยเอาต์พุตมาตรฐาน แต่ละหมายเลขต้องคั่นด้วยช่องว่าง คุณไม่สามารถใช้ฟังก์ชันในตัวเพื่อแปลงเป็นตัวเลขโรมันหรือแอปพลิเคชันหรือไลบรารีภายนอกเพื่อทำเช่นนั้น ผลลัพธ์ที่ต้องการคือ I II III IV V VI VII VIII IX X XI XII XIII XIV XV XVI XVII XVIII XIX XX XXI XXII XXIII XXIV XXV XXVI XXVII XXVIII XXIX XXX XXXI XXXII XXXIII XXXIV XXXV XXXVI XXXVII XXXVIII XXXIX XL XLI XLII …

30
ค้นหาความยาวของลำดับสูงสุด
สมมติว่าเรามีสตริงและเราต้องการหาลำดับซ้ำสูงสุดของจดหมายทุกฉบับ ตัวอย่างเช่นกำหนดอินพุตตัวอย่าง: "acbaabbbaaaaacc" เอาต์พุตสำหรับอินพุตตัวอย่างสามารถเป็น: a=5 c=2 b=3 กฎ: รหัสของคุณอาจเป็นฟังก์ชั่นหรือโปรแกรม - เพื่อให้คุณเลือก อินพุตสามารถเป็นได้โดยพารามิเตอร์ stdin ไฟล์หรือฟังก์ชัน เอาต์พุตควรมีเฉพาะอักขระที่ปรากฏในอินพุต ความยาวสูงสุดของอินพุตคือ 1024 ลำดับเอาต์พุตไม่สำคัญ แต่ต้องพิมพ์ในรูปแบบ [char] = [ลำดับซ้ำสูงสุด] [ตัวคั่น] สตริงสามารถมีอักขระใด ๆ การแข่งขันจะสิ้นสุดในวันพฤหัสบดีที่ 3 เวลา 23:59 UTC
29 code-golf 

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