คำถามติดแท็ก source-layout

สำหรับความท้าทายที่เกี่ยวข้องกับรูปแบบทางกายภาพหรือการจัดการทางกายภาพของซอร์สโค้ด

4
Hyperprogramming: N + N, N × N, N ^ N ทั้งหมดในที่เดียว
เขียนโปรแกรมที่ใช้หมายเลข N ตั้งแต่ 1 ถึง 9 ในพื้นเมืองในรูปแบบโปรแกรมของคุณควรเอาท์พุท N + NEG การส่งออก2ถ้า N คือ1, 4ถ้า N คือ2, 6ถ้า N คือ3และอื่น ๆ เมื่อตัวละครในโปรแกรมของคุณทุกคนจะทำซ้ำในสถานที่แล้วมันควรจะเป็นโปรแกรมที่ใช้ใน N (ยังคง 1-9) และเอาท์พุทเอาท์พุท N × NEG 1ถ้า N คือ1, 4ถ้า N คือ2, 9ถ้า N คือ3และอื่น ๆ เมื่อตัวละครในโปรแกรมของคุณทุกคนจะ triplicated ในสถานที่แล้วมันควรจะเป็นโปรแกรมที่ใช้ใน N (ยังคง 1-9) และผลการส่งออก N ^ NEG 1ถ้า N …

30
สวัสดีชาวโลก! (ตัวละครอื่น ๆ ทุกตัว)
เขียนโปรแกรมที่พิมพ์ "Hello, World!" แต่ถ้าคุณใช้ตัวอักษรตัวแรกตัวที่สามตัวที่ห้าและอื่น ๆ ในโปรแกรมของคุณโปรแกรมที่เป็นผลลัพธ์ควรพิมพ์ "Hello, World!" หากโปรแกรมของคุณคือ: abc def มันควรจะส่งออก "Hello, World!" แต่ควรจะ acdf ไม่มีวิธีแก้ไขที่มีอักขระน้อยกว่า 2 ตัว

30
ฉันเพิ่มแหล่งที่มาเป็นสองเท่าคุณเพิ่มเอาต์พุตเป็นสองเท่า!
งานของคุณถ้าคุณต้องการที่จะยอมรับมันคือการเขียนโปรแกรมที่แสดงผลเป็นจำนวนเต็มบวก (สูงกว่า 0) ส่วนที่ยุ่งยากคือถ้าฉันทำซ้ำซอร์สโค้ดของคุณเอาต์พุตจะต้องเป็นจำนวนเต็มสองเท่าต้นฉบับ กฎระเบียบ คุณต้องสร้างโปรแกรมเต็มรูปแบบ นั่นคือผลลัพธ์ของคุณจะต้องพิมพ์ไปที่ STDOUT แหล่งที่มาเริ่มต้นจะต้องมีความยาวอย่างน้อย 1 ไบต์ จำนวนเต็มทั้งสองต้องอยู่ในฐาน 10 (ห้ามส่งออกในฐานอื่นหรือด้วยเครื่องหมายทางวิทยาศาสตร์เป็นสิ่งต้องห้าม) โปรแกรมของคุณจะต้องไม่รับอินพุต (หรือมีอินพุตที่ไม่ได้ใช้และว่างเปล่า) อนุญาตให้แสดงเอาต์พุตจำนวนเต็มด้วยการเว้นวรรคต่อท้าย / นำหน้า คุณไม่สามารถรับบรรทัดใหม่ระหว่างสำเนาของแหล่งที่มาของคุณ นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุด (ต้นฉบับ) ในแต่ละภาษาชนะ! มีการใช้ช่องโหว่เริ่มต้น ตัวอย่าง สมมติว่ารหัสที่มาของคุณและผลผลิตที่สอดคล้องกันของมันคือABC 4ถ้าผมเขียนแทนและเรียกใช้การส่งออกจะต้องมีABCABC8 ลีดเดอร์บอร์ด นี้ใช้ใช้@ รูปแบบของ แสดงตัวอย่างรหัส /* Configuration */ var QUESTION_ID = 132558; // Obtain this from the url // It will be …

30
เขียนโปรแกรมที่ให้ผลลัพธ์“ 2012” - ถึงแม้ว่ามันจะถูกแก้ไข!
ความคิดนี้ไม่ใช่ของฉันแม้ว่าฉันจะไม่รู้ว่ามันมาจากไหน ฉันเคยพบเจอในการประกวดเขียนโปรแกรมเมื่อนานมาแล้ว (1998 ถ้าฉันจำได้ถูกต้อง) งานคือการเขียนโปรแกรมในภาษาที่คุณชื่นชอบที่ผลและมีเพียง2012 2012สิ่งที่จับได้คือโปรแกรมจะต้องส่งออก2012หลังจากตัวละครตัวใดตัวหนึ่งถูกแก้ไข การดัดแปลงสามารถเป็นการแทรกการลบหรือการแทนที่ แน่นอนว่าการแก้ไขจะเป็นไปได้ว่าโปรแกรมนั้นยังคงใช้งานได้จริง เนื่องจากฉันไม่รู้ภาษาการเขียนโปรแกรมทั้งหมดฉันจึงต้องขอให้ผู้ชมช่วยฉันและทดสอบคำตอบที่ส่งมา เพิ่ม:หลายคนแสดงความคิดเห็นว่าคำจำกัดความของการแก้ไขที่ยอมรับได้ของฉันนั้นคลุมเครือเกินไป นี่คือความพยายามครั้งที่สองของฉัน: การแก้ไขที่ได้รับอนุญาตจะทำให้โปรแกรมของคุณใช้งานได้จริงและจะไม่ทำให้เกิดความผิดพลาด ที่นั่นฉันคิดว่าควรครอบคลุมข้อผิดพลาดในการรวบรวมเวลาเชื่อมโยงและเวลาทำงานทั้งหมด แม้ว่าฉันจะแน่ใจว่าจะมีบางกรณีแปลก ๆ ในบางภาษาอยู่แล้วดังนั้นเมื่อเกิดขึ้นเราจะดูทีละคน

30
อักขระห้าตัวที่มีประสิทธิภาพมากที่สุดในภาษาของคุณคืออะไร?
เลือกอักขระห้าตัวที่ภาษาของคุณรองรับ มี 5! = 5 × 4 × 3 × 2 × 1 = 120 วิธีการเหล่านี้สามารถจัดเป็นสตริง 5 ตัวที่มีอักขระแต่ละตัวครั้งเดียว; 120 พีชคณิต เลือกตัวละครของคุณว่าเมื่อใดที่มีการเรียกใช้สตริง 120 ในภาษาของคุณเอาต์พุต 120 ที่สร้างขึ้นจะมีจำนวนเต็มไม่ซ้ำกันจำนวนมากตั้งแต่ 1 ถึง 120 (รวม) เท่าที่จะเป็นไปได้ นั่นคือสำหรับการเรียงสับเปลี่ยน 120 ตัวของ 5 ตัวอักษรของคุณที่สร้างรหัสที่รันได้ที่ส่งออกตัวเลขเดียวคุณต้องการให้ชุดของตัวเลขเหล่านั้นทั้งหมดจับคู่ให้ใกล้ที่สุดกับชุดของจำนวนเต็มตั้งแต่ 1 ถึง 120 ดังนั้นความนึกคิดการเปลี่ยนแปลงครั้งแรกของคุณจะส่งออก1ต่อไป2ต่อไปตลอดทางขึ้นไป3 120แต่อุดมคตินั้นเป็นไปไม่ได้สำหรับภาษาและตัวละครส่วนใหญ่ สายอักขระ 5 ตัวอาจถูกเรียกใช้เป็น: โปรแกรมที่ไม่มีอินพุต ฟังก์ชั่นที่ไม่มีข้อโต้แย้ง REPLคำสั่ง สตริงที่แตกต่างกันสามารถทำงานได้หลายวิธีหากต้องการ สำหรับเอาต์พุตที่จะนับต้องเป็นเอาต์พุตจำนวนเต็มเดียวในวิธีปกติเช่น: ถูกพิมพ์ไปยัง stdout …

25
พิมพ์ Negative of Code ของคุณ
พิจารณาสแควร์ของอักขระ ASCII ที่พิมพ์ได้ (รหัสจุด 0x20 ถึง 0x7E) สำหรับความยาวด้านNเช่นดังต่อไปนี้ (ที่นี่, N = 6 ): =\ g \ 7 m+y "g L ~ e> PHq นอกจากนี้เรายังต้องใช้แต่ละแถวและแต่ละคอลัมน์จะมีอย่างน้อย1 พื้นที่และ1 ไม่ใช่พื้นที่ของตัวละคร (ตัวอย่างข้างต้นเป็นไปตามนี้) เรากำหนดค่าลบของสี่เหลี่ยมจัตุรัสดังกล่าวให้เป็นสี่เหลี่ยมจัตุรัสขนาดเดียวกันซึ่งแต่ละพื้นที่ถูกแทนที่ด้วยพื้นที่ว่างและในทางกลับกัน เช่นต่อไปนี้จะเป็นค่าลบที่ถูกต้องของตัวอย่างด้านบน: 1234 a b cd ZYXWV ! {} [ ] ? ตัวเลือกของอักขระที่ไม่ใช่ช่องว่างไม่เกี่ยวข้อง (ตราบใดที่อักขระเหล่านั้นมาจากช่วง ASCII ที่พิมพ์ได้) ความท้าทาย คุณจะเขียนโปรแกรมโดยใช้ซอร์สโค้ดแบบสี่เหลี่ยมที่มีความยาวด้านN> 1ซึ่งจะพิมพ์ค่าลบของตัวเองไปยัง STDOUT ต้องพิมพ์ช่องว่างต่อท้าย คุณสามารถหรือไม่พิมพ์บรรทัดใหม่ขึ้นบรรทัดเดียว กฎควินินปกติยังมีผลบังคับใช้ดังนั้นคุณต้องไม่อ่านซอร์สโค้ดของคุณเองไม่ว่าโดยตรงหรือโดยอ้อม …

30
จากการเขียนโปรแกรมไขปริศนาไปจนถึง Code Golf
งานของคุณคือการเขียนโปรแกรมที่ส่งออกสตริงที่แน่นอนProgramming Puzzles (ขึ้นบรรทัดใหม่ทางเลือก) แต่เมื่อเว้นวรรคแท็บและบรรทัดใหม่ทั้งหมดจะถูกลบออกมันจะส่งออกCode Golf(ต่อท้ายขึ้นบรรทัดใหม่ก็ได้) จำนวนไบต์ของคุณคือการนับของโปรแกรมแรกโดยยังมีช่องว่าง หมายเหตุ ช่องว่างในCode Golf และ Programming Puzzlesจะถูกลบออกเป็นส่วนหนึ่งของการลบดังนั้นวางแผนให้เหมาะสม ในการเข้ารหัสโดยที่ 0x09, 0x0A และ 0x20 ไม่ใช่แท็บบรรทัดใหม่หรือช่องว่างตามลำดับตัวอักษรเหล่านั้นจะถูกลบ หากรหัสของคุณคือ 42 $@ rw$ @42 Programming Puzzlesแล้วที่ต้องเอาท์พุท นอกจากนี้ในภาษาเดียวกัน 42$@rw$@42 Code Golfการส่งออกต้อง นี่คือโค้ดกอล์ฟดังนั้นโค้ดที่สั้นที่สุดในหน่วยไบต์ชนะ! โชคดี!

11
Error 404: ไม่พบตัวอักษร
สถานการณ์ เพื่อนคนหนึ่งของคุณกำลังดิ้นรนกับการบ้าน เขาต้องการโปรแกรมง่าย ๆ ที่พิมพ์ตัวเลขธรรมชาติ 404 ตัวแรก: 1 2 3 4 5 6 7 8 9 10 11 ... 401 402 403 404 ความท้าทายของคุณนั้นง่าย: เขียนโปรแกรมนี้สำหรับเขา อย่างไรก็ตามการเชื่อมต่อของคุณแย่มากดังนั้นตัวละครสุ่ม 1 ตัวจะหายไปทุกครั้งที่คุณส่งโปรแกรม เพื่อป้องกันไม่ให้โปรแกรมแตกคุณต้องทำเพื่อให้การลบอักขระเดี่ยวใด ๆจะไม่มีผล:โปรแกรมใช้งานได้โดยไม่คำนึงถึง (โปรแกรมต้นฉบับจะต้องใช้งานได้เช่นกัน) เนื่องจากการเชื่อมต่อไม่ดีพอที่จะส่งไฟล์ขนาดใหญ่รหัสของคุณจะต้องสั้นที่สุด TL: DR - สร้างโปรแกรมที่ทำให้รังสีแข็งตัวเพื่อส่งออกหมายเลข 1 ถึง 404 กฎ / รายละเอียด ผลลัพธ์อาจเป็นรายการจำนวนเต็มในรูปแบบที่เหมาะสม (คั่นด้วยช่องว่างบรรทัดใหม่จุลภาค ฯลฯ ) อย่างไรก็ตามผลลัพธ์ของคุณจะต้องสอดคล้องและไม่เปลี่ยนแปลงเมื่อมีการแก้ไขโปรแกรม การตั้งค่าสถานะบรรทัดคำสั่งที่ประกอบด้วยตรรกะเรียกใช้รหัสจริงสร้างรายการหมายเลขและอื่น ๆ ถูกแบน …

30
สร้าง“ H” จาก“ H” ที่เล็กลง
ท้าทาย สร้างฟังก์ชั่นหรือโปรแกรมที่เมื่อได้รับจำนวนเต็มsizeทำต่อไปนี้: ถ้าsizeเท่ากับ 1 เอาต์พุต H H HHH H H ถ้าsizeมากกว่า 1 เอาต์พุต X X XXX X X โดยที่Xเอาต์พุตของโปรแกรม / ฟังก์ชั่นสำหรับsize - 1 (หากคุณต้องการคุณอาจมีกรณีฐานสอดคล้องกับ0ตราบใดที่คุณระบุในคำตอบของคุณ) รูปแบบผลลัพธ์ใด ๆ ต่อไปนี้เป็นที่ยอมรับแล้วแต่จำนวนใดจะสะดวกกว่าสำหรับคุณ: สตริงของโครงสร้างที่ต้องการพร้อมอักขระสองตัวที่แตกต่างกันซึ่งสอดคล้องกับHและspace อาร์เรย์สองมิติพร้อมโครงสร้างที่ต้องการโดยมีค่าแตกต่างกันสองค่าที่สอดคล้องกับHและspace อาร์เรย์ / รายการสตริงที่มีหนึ่งบรรทัดของเอาต์พุตในแต่ละสตริงโดยมีค่าแตกต่างกันสองค่าที่สอดคล้องกับHและspace อนุญาตให้มีช่องว่างนำหน้าตราบใดที่มีช่องว่างนำหน้าจำนวนหนึ่งคงที่ในแต่ละบรรทัด อักขระเอาต์พุตที่แตกต่างกันสองตัวสามารถขึ้นอยู่กับสิ่งที่คุณเลือกตราบใดที่อักขระเหล่านั้นแตกต่างกัน ระบุรูปแบบผลลัพธ์ที่โค้ดของคุณส่งคืน กรณีทดสอบ 1 H H HHH H H 2 H H H H HHH HHH H …
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

28
คำนวณพี (ไม่ใช่ Pi)
ไม่ฉันไม่ได้หมายถึงและϕ = 1.618... π = 3.14159...ผมหมายถึงฟังก์ชั่น φ (x)คือจำนวนของจำนวนเต็มน้อยกว่าหรือเท่ากับไปที่มีความสำคัญที่จะxx π (x)เป็นจำนวน primes xน้อยกว่าหรือเท่ากับ ขอบอกว่า "ไม่ได้ปี่" แล้วเธ (x) และกำหนดให้เป็นหมายเลขของคอมโพสิตxน้อยกว่าหรือเท่ากับ งาน ป.ร. ให้ไว้เป็นจำนวนเต็มบวกอย่างเคร่งครัดx, คำนวณφ (เธ (x)) การให้คะแนนอยู่ในหน่วยไบต์ ตัวอย่าง แต่ละบรรทัดประกอบด้วยอินพุต (จาก 1 ถึง 100, รวม) และเอาต์พุตที่สอดคล้องกันคั่นด้วยช่องว่าง 1 0 2 0 3 0 4 1 5 1 6 1 7 1 8 2 9 2 …
73 code-golf  sequence  primes  number-theory  code-golf  decision-problem  code-golf  date  code-golf  typography  code-golf  math  number  multiple-holes  code-golf  quine  code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

7
Fault-Tolerant Hello World (ตอนสัมภาษณ์)
ในตอนท้ายของการสัมภาษณ์ผู้สัมภาษณ์ที่ชั่วร้ายจะบอกคุณว่า "เราทำให้ผู้สมัครของเราทั้งหมดทำการทดสอบการเข้ารหัสสั้น ๆ เพื่อดูว่าพวกเขารู้จริง ๆ ว่าพวกเขากำลังพูดถึงอะไรอยู่อย่ากังวลมันเป็นเรื่องง่ายและถ้าคุณสร้าง โปรแกรมทำงานฉันจะเสนองานให้คุณทันที " เขาทำท่าให้คุณนั่งลงที่คอมพิวเตอร์ใกล้ ๆ "สิ่งที่คุณต้องทำคือสร้างโปรแกรม Hello World ที่ใช้งานได้ แต่" - และเขายิ้มกว้าง - "มีสิ่งที่น่าเสียดาย แต่คอมไพเลอร์เดียวที่เรามีในเครื่องนี้มีบั๊กเล็ก ๆ มันสุ่มลบอักขระหนึ่งตัวจาก ไฟล์ซอร์สโค้ดก่อนคอมไพล์ตกลงเห็นคุณในห้านาที! " และเขาก็เดินออกจากห้องพร้อมผิวปากอย่างมีความสุข คุณรับประกันได้ไหมว่าคุณจะได้งานทำ? งาน เขียนโปรแกรมที่จะพิมพ์Hello, world!ไปยังเอาต์พุตมาตรฐานแม้หลังจากลบอักขระเดี่ยวจากตำแหน่งใด ๆ ในไฟล์ หรือมาใกล้เคียงกับสิ่งนี้มากที่สุด กฎระเบียบ ไม่มี Extraneous Output - Hello, world!ต้องเป็นสิ่งสำคัญเพียงอย่างเดียวที่พิมพ์ไปยังเอาต์พุตมาตรฐาน มันก็โอเคที่จะรวมตัวละครอื่น ๆ หากพวกเขาถูกสร้างขึ้นตามภาษาที่คุณเลือกเช่นบรรทัดใหม่หรือแม้กระทั่งสิ่งที่ชอบ[1] "Hello, world!"(ตัวอย่างเช่นถ้าคุณใช้ R) แต่มันจะต้องพิมพ์สิ่งเดียวกันทุกครั้ง ไม่สามารถพิมพ์Hello, world!Hello, world!หรือHello world!" …

5
กำลังโปรแกรม: O (1 ^ N), O (N ^ 1), O (2 ^ N), O (N ^ 2) ทั้งหมดในที่เดียว
เขียนโปรแกรม (หรือฟังก์ชั่น) ที่แสดงความซับซ้อนของเวลาO ขนาดใหญ่ สี่ทั่วไปขึ้นอยู่กับวิธีการทำงาน ในรูปแบบใดก็จะใช้เวลาในจำนวนเต็มบวก N ที่คุณอาจคิดน้อยกว่า 2 วันที่ 31 เมื่อโปรแกรมทำงานในรูปแบบดั้งเดิมควรมีความซับซ้อนคงที่ นั่นคือความซับซ้อนควรจะΘ (1)หรือเท่ากันΘ (1 ^ N) เมื่อโปรแกรมกลับด้านและรันควรมีความซับซ้อนเชิงเส้น นั่นคือความซับซ้อนควรจะΘ (N)หรือเท่ากันΘ (N ^ 1) (สิ่งนี้สมเหตุสมผลเนื่องจากN^1มีการ1^Nย้อนกลับ) เมื่อโปรแกรมสองเท่า , ตัดแบ่งเช่นกับตัวเองและเรียกมันควรจะมีการชี้แจงความซับซ้อนโดยเฉพาะ2 N นั่นคือความซับซ้อนควรจะΘ (2 ^ N) (นี้ทำให้รู้สึกตั้งแต่2ใน2^Nเป็นสองเท่า1ใน1^N.) เมื่อโปรแกรมสองเท่าและย้อนกลับและเรียกมันควรจะมีพหุนามความซับซ้อนโดยเฉพาะN 2 นั่นคือความซับซ้อนควรจะΘ (N ^ 2) (สิ่งนี้สมเหตุสมผลเนื่องจากN^2มีการ2^Nย้อนกลับ) สี่กรณีนี้เป็นกรณีเดียวที่คุณต้องจัดการ โปรดทราบว่าเพื่อความแม่นยำฉันใช้สัญลักษณ์ขนาดใหญ่ที (Θ)แทนO ใหญ่เพราะรันไทม์ของโปรแกรมของคุณจะต้องล้อมรอบทั้งด้านบนและด้านล่างด้วยความซับซ้อนที่จำเป็น มิฉะนั้นเพียงแค่เขียนฟังก์ชั่นใน O (1) จะตอบสนองทั้งสี่จุด มันไม่สำคัญเกินไปที่จะเข้าใจความแตกต่างที่นี่ ส่วนใหญ่หากโปรแกรมของคุณกำลังดำเนินการ …

24
เขียนโปรแกรมรูปสี่เหลี่ยมผืนผ้าที่แสดงจำนวนครั้งที่ถูกหมุน
ชื่อกล่าวมันทั้งหมด เป้าหมายของคุณคือการเขียนโปรแกรมที่มีตัวอักษรสี่เหลี่ยมมุมฉากที่สามารถหมุนได้และเรียกใช้ซ้ำเพื่อส่งออกจำนวน 90 °การหมุนทวนเข็มนาฬิกา (CCW) ที่ทำไปแล้ว ตัวอย่างเช่นถ้าโปรแกรม 3 × 2 abc def แก้ไขปัญหามันจะเริ่มต้น 0 และหมุนวนต่อเนื่อง 90 ° CCW cf fed da be cba eb ad fc จะส่งออก 1, 2 และ 3 ตามลำดับ การใช้ความคิดเห็นทำให้เรื่องนี้เป็นเรื่องเล็กน้อยเป็นภาษาส่วนใหญ่ ตัวอย่างเช่นใน Ruby สามารถทำได้ในรูปสี่เหลี่ยมผืนผ้า 7 × 7: ###p### ### ### ###1### p 0#2 p ###3### ### ### ###p### …

10
เทียนน้อยเป็นเรื่องน่าเศร้า วาดเขาเป็นก้อนเมฆเพื่อให้กำลังใจเขา
เทียนน้อยเป็นเรื่องน่าเศร้า วาดเขาเป็นก้อนเมฆเพื่อให้กำลังใจเขา หมายเหตุ: การวาดภาพบนคลาวด์จะไม่ทำให้เขามีกำลังใจ วงกลมสามารถนิยามเป็น 3-tuple (x,y,r)โดยที่xตำแหน่ง x ของวงกลมบนระนาบคาร์ทีเซียนyคือตำแหน่ง y ของวงกลมบนระนาบคาร์ทีเซียนและrเป็นรัศมีของวงกลม xและyอาจเป็นลบ rเป็นบวกเสมอ อินพุตเป็นรายการของวงกลมในรูปแบบของช่องว่างคั่น 3-tuples ตัวอย่างเช่น 3,1,1 3,2,1.5 1,2,0.7 0.9,1.2,1.2 1,0,0.8 3,1,1หมายถึง "วงกลมที่มีจุดศูนย์ที่3,11 รัศมี. 3,2,1.5หมายความว่า" วงกลมที่มีจุดศูนย์กลางที่ A 3,2พร้อมกับ 1.5 รัศมี หากเราวาดวงกลมทั้งหมดของอินพุตบนกราฟดูเหมือนว่านี้ (ฉันได้รวมเส้นกริดและป้ายกำกับเพื่อความชัดเจนเท่านั้นพวกเขาไม่จำเป็นต้องใช้): สังเกตว่าวงกลมทั้งหมดกลมกลืนกันอย่างไร นั่นคือพวกเขาทั้งหมดซ้อนทับกันเพื่อให้เกิดกลุ่มใหญ่กลุ่มหนึ่งโดยไม่มีกลุ่มวงกลมเล็ก ๆ แยกออกจากส่วนที่เหลือ อินพุตรับประกันว่าจะเหนียวแน่น สมมติว่าตอนนี้เราวาดเส้นที่เดินทางรอบ "เส้นขอบ" ที่เกิดจากวงกลมเหล่านี้โดยไม่มีเส้นอื่นใด มันจะเหมือนกับการวาดเส้นขอบของเงาที่เกิดจากวงกลมทั้งหมด เมฆที่เกิดขึ้นจะมีลักษณะเช่นนี้: ดังนั้นคลาวด์นี้จึงถูกสร้างขึ้นโดยการวาดเฉพาะส่วนโค้งของวงกลมในอินพุตที่ก่อตัวเป็นเส้นขอบ กล่าวอีกนัยหนึ่งระบบคลาวด์เกิดจากการวาดส่วนโค้งที่ไม่ได้อยู่ในวงกลมอื่น โปรแกรมของคุณจะป้อนข้อมูลในแบบฟอร์มที่อธิบายข้างต้นและส่งภาพที่แสดงคลาวด์ที่เกิดขึ้น รูปร่างโดยรวมของคลาวด์จะต้องถูกต้อง แต่ขนาดสีความหนาของเส้นและลักษณะของจุดยอดนั้นขึ้นอยู่กับคุณ โปรดทราบว่าคลาวด์ต้องสามารถมองเห็นได้ดังนั้นคุณไม่สามารถดึงบางสิ่งบางอย่างเช่น "โปรแกรมนี้วาดคลาวด์สีขาวบนพื้นหลังสีขาว", "โปรแกรมนี้วาดคลาวด์ในระดับที่เล็กที่สุด", …

24
ช่องว่างที่สำคัญ
เรากำหนดช่องว่างให้เป็นหนึ่งในสามของตัวละครแท็บ (0x09), ขึ้นบรรทัดใหม่ (0x0A) หรือเว้นวรรค (0x20) สำหรับความท้าทายนี้คุณต้องเขียนสองโปรแกรมหรือฟังก์ชั่นในภาษาการเขียนโปรแกรมเดียวกันซึ่งทำงานดังต่อไปนี้: นับอักขระช่องว่างในสตริงที่กำหนด ตัวอย่างเช่นการป้อนข้อมูล 123 -_- abc def จะส่งคืน 7 (หากไม่มีบรรทัดใหม่ต่อท้าย) แยกสตริงที่กำหนดที่ช่องว่างที่ต่อเนื่องกัน หากสตริงเริ่มต้นหรือลงท้ายด้วย whitespace ไม่ควรมีสตริงว่างที่ส่งคืนที่สิ้นสุด ตัวอย่างเช่นอินพุตเดียวกัน 123 -_- abc def ["123", "-_-", "abc", "def"]จะกลับมา ไม่ว่าในกรณีใดคุณสามารถป้อนข้อมูลผ่าน STDIN อาร์กิวเมนต์บรรทัดคำสั่งหรือฟังก์ชันอาร์กิวเมนต์ส่งคืนผลลัพธ์หรือพิมพ์ STDOUT สำหรับโปรแกรมที่สองหากคุณเลือกที่จะพิมพ์ไปยัง STDOUT โปรดพิมพ์แต่ละสตริงในบรรทัดของตัวเองโดยไม่ต้องใส่เครื่องหมายอัญประกาศ สำหรับทั้งสองโปรแกรมคุณอาจสมมติว่าอินพุตมีเฉพาะ ASCII ที่พิมพ์ได้ (0x20 ถึง 0x7E) และช่องว่าง ตอนนี้ที่นี่คือการจับ: หากช่องว่างทั้งหมดถูกลบออกจากทั้งสองโปรแกรม / ฟังก์ชั่นสตริงผลลัพธ์จะต้องเหมือนกัน นั่นคือสองส่งของคุณอาจเพียง แต่แตกต่างกันในจำนวนและตำแหน่งของตัวอักษรช่องว่าง โปรแกรม …

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