คำถามติดแท็ก test-battery

ปัญหาที่เกณฑ์การให้คะแนนเกี่ยวข้องกับการรันเอาต์พุตของโปรแกรมผ่านกรณีทดสอบจำนวนมาก

2
สร้างตัวแก้ปริศนาด้านบนด้านหน้า
ปริศนาบนสุดด้านหน้าเป็นปริศนาที่คุณจะต้องสร้างรูปร่าง 3-D ของบล็อก (ปกติลูกบาศก์) ที่กำหนดมุมมองสามมุมฉาก: มุมมองด้านบนมุมมองด้านหน้าและมุมมองด้านข้าง ตัวอย่างเช่นกำหนดมุมมองด้านบนด้านหน้าและด้านข้างดังนี้: Top: Front: Side: . . . . . . . . . . . . . x x . . x x . . x x . . x x . . x x . . x x . . . . . …

3
เชื่อมช่องว่าง
เมื่อกำหนดภาพขาวดำที่มีพื้นหลังสีขาวและชุดจุดสีดำให้ทาสีชุดพิกเซลสีขาวสีแดงเพื่อให้มีเส้นทางระหว่างพิกเซลสีดำแต่ละคู่ รายละเอียด เส้นทางคือชุดของพิกเซลที่เชื่อมต่อ (การเชื่อมต่อ 8-Neighborhood) พิกเซลสีดำสามารถใช้เป็นส่วนหนึ่งของเส้นทาง เป้าหมายพยายามลดจำนวนพิกเซลสีแดงให้น้อยที่สุดภายใต้เงื่อนไขข้างต้นและแสดงภาพที่สอดคล้องกัน คุณไม่ต้องไปหาทางแก้ปัญหาที่ดีที่สุด วิธีแก้ปัญหาที่เลวร้ายที่สุดและในเวลาเดียวกันนั้นก็แค่ทาสีขาวพิกเซลสีแดงทั้งหมด ตัวอย่าง (ขยายพิกเซลเพื่อให้มองเห็นได้): รายละเอียด รับภาพพิกเซล (ในรูปแบบที่เหมาะสม) ส่งคืนรูปภาพอื่นที่มีจุดเชื่อมต่อตามที่ระบุข้างต้นรวมทั้งจำนวนเต็มที่ระบุว่ามีการใช้พิกเซลสีแดงจำนวนเท่าใด คะแนนเป็นผลคูณของ (1 + จำนวนพิกเซลสีแดง) สำหรับแต่ละการทดสอบ 14 ครั้ง เป้าหมายคือการมีคะแนนต่ำสุด Testcases รายการทดสอบทั้ง 14 ชุดแสดงอยู่ด้านล่าง โปรแกรมไพ ธ อนเพื่อตรวจสอบการเชื่อมต่อของเอาต์พุตสามารถพบได้ที่นี่ Meta ขอบคุณ @Veskah, @Falize, @ wizzwizz4 และ @trichoplax สำหรับคำแนะนำต่างๆ

1
มาเขียน Minifier กัน
พื้นหลัง โดยทั่วไปจะใช้ตัวขยายขนาดเล็กเมื่อแสดง JavaScript ในเว็บเบราว์เซอร์ของคุณ โดยทั่วไปจะใช้เพื่อลดจำนวนไบต์ที่ต้องส่ง การประหยัดแบนด์วิดท์มีประโยชน์สำหรับเหตุผลที่ชัดเจน บางคนใช้ obfuscaters (ซึ่งตั้งใจทำให้อ่านรหัสยากขึ้น) ฉันไม่ได้พูดถึงสิ่งเหล่านั้น เราจะลดขนาด Python 2 ฉันกำลังถกเถียงกันว่าจะใช้ JavaScript หรือ Python สำหรับประสบการณ์การลดขนาดหรือไม่และฉันตัดสินใจใช้ Python ด้วยเหตุผลสองประการ: พื้นที่สีขาวมีความสำคัญและฉันคิดว่านั่นจะเพิ่มปัญหาไดนามิกที่น่าสนใจ นอกจากนี้การใช้ Python 2.7 จะให้ไดนามิกอื่นเช่นลบฟุ่มเฟือย()ระหว่างการพิมพ์ (เช่นprint("Hello world")vs. print"Hello world") โดยส่วนตัวฉันชอบที่จะเปิดเป็นภาษาใดก็ได้ แต่สำหรับบางภาษากระบวนการนี้จะไม่สมเหตุสมผล และภาษาใดที่คุณตัดสินใจที่จะลดขนาดจะส่งผลกระทบโดยตรงต่อคะแนนของคุณ (และหากภาษานั้นสามารถลดขนาดได้) รายละเอียด เป้าหมายของคุณคือการแก้ไขโค้ดในแบบที่จะไม่เปลี่ยนเป็นฟังก์ชั่น แน่นอนคุณอาจเปลี่ยนชื่อตัวแปร (ภายในโปรแกรมลดขนาด) ของคุณตราบใดที่มันไม่มีผลต่อการส่งออก (ติดตามขอบเขต ) แม้ว่าฉันจะให้โปรแกรมเฉพาะแก่คุณโปรดอย่าปรับให้เหมาะสมสำหรับกรณีทดสอบเนื่องจากช่องโหว่มาตรฐานทั้งหมดถูกห้าม คะแนน : ความยาวของโปรแกรมหลังจากที่คุณย่อขนาดให้เล็กที่สุดแล้ว อินพุต : โปรแกรม Python 2.7 ใด …

11
การจับคู่กรณีค้นหาแทนที่
รับสามอินพุตสตริงข้อความT; สตริงอักขระที่จะแทนที่F; และสตริงอักขระที่จะแทนที่ด้วย, R. สำหรับแต่ละย่อยของTแบบเดียวกับที่ (กรณีตาย) เป็นตัวละครF, Rแทนที่พวกเขากับตัวละครใน อย่างไรก็ตามให้เป็นกรณีเดียวกันกับข้อความต้นฉบับ หากมีตัวละครอื่น ๆ ในRกว่าตัวละครพิเศษควรจะเป็นกรณีเดียวกับที่พวกเขาอยู่ในF Rหากมีตัวเลขหรือสัญลักษณ์ในFแล้วตัวละครที่เกี่ยวข้องในควรเก็บไว้ในกรณีที่พวกเขาได้ในR จะไม่จำเป็นต้องปรากฏในRFT คุณสามารถสมมติว่าข้อความทั้งหมดจะอยู่ในช่วง ASCII ที่พิมพ์ได้ ตัวอย่าง "Text input", "text", "test" -> "Test input" "tHiS Is a PiEcE oF tExT", "is", "abcde" -> "tHaBcde Abcde a PiEcE oF tExT" "The birch canoe slid on the smooth planks", "o", " …
14 code-golf  string  code-golf  string  ascii-art  alphabet  code-golf  number  sequence  counting  code-golf  sequence  counting  code-golf  quine  source-layout  code-golf  string  code-golf  decision-problem  game  code-golf  string  quine  source-layout  subsequence  code-golf  quine  code-golf  array-manipulation  integer  code-golf  ascii-art  code-golf  sequence  integer  code-golf  kolmogorov-complexity  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  integer  code-golf  string  number  integer  code-golf  string  ascii-art  code-challenge  test-battery  expression-building  source-layout  printable-ascii  code-bowling  code-golf  number  code-golf  number  string  binary  code-golf  matrix  conversion  code-golf  number  arithmetic 

6
ข้อความถึง Brain-Flak
ความท้าทายของคุณคือการเปลี่ยนข้อความที่ป้อนเป็นรหัสสมองที่จะส่งออกข้อความ บทเรียนที่นำมาจากที่นี่ได้รับอนุญาตที่นี่ Brain-Flak มีสองกองเรียกว่า 'left' และ 'right' สแต็คที่ใช้งานเริ่มต้นที่ด้านซ้าย หากสแต็กเปล่าถูกเปิดใช้งานมันจะคืนค่า 0 นั่นคือมัน ไม่มีตัวแปรอื่น ๆ เมื่อโปรแกรมเริ่มขึ้นอาร์กิวเมนต์บรรทัดคำสั่งแต่ละรายการจะถูกส่งไปยังสแต็กที่ใช้งานอยู่ อักขระที่ใช้ได้เฉพาะในโปรแกรม Brain-Flak คือ()[]{}<>และต้องมีความสมดุลเสมอ : มีสองประเภทของฟังก์ชั่นNiladsและMonads niladเป็นฟังก์ชั่นที่ใช้เวลา 0 ขัดแย้ง นี่คือทั้งหมดของ nilads: () หาค่าเป็นหนึ่ง [] หาค่าสูงสุดของสแต็กปัจจุบัน {}ป็อปสแต็คที่ใช้งานอยู่ หาค่า popped <>สลับสแตกที่ใช้งานอยู่ หาค่าเป็นศูนย์ สิ่งเหล่านี้จะถูกรวมเข้าด้วยกันเมื่อถูกประเมิน ดังนั้นหากเรามี '3' อยู่ด้านบนของกองซ้อนที่ใช้งานอยู่ตัวอย่างนี้: ()(){} จะประเมิน1 + 1 + active.pop()ว่าจะประเมินค่าใดถึง 5 พระใช้เวลาหนึ่งอาร์กิวเมนต์ชิ้นหนึ่งของรหัส Brain-Flak นี่คือพระทั้งหมด: (n) กด 'n' …

3
ปริศนารวมกัน!
บทนำ: Combinatory Logic Combinatory logic (CL) นั้นมีพื้นฐานมาจากสิ่งที่เรียกว่าcombinatorsซึ่งโดยทั่วไปแล้วจะทำหน้าที่ มีสองขั้นพื้นฐาน "ในตัว" combinators มีSและKซึ่งจะอธิบายในภายหลัง ซ้าย associativity CL คือการเชื่อมโยงด้านซ้ายซึ่งหมายถึงวงเล็บ (ที่มีเนื้อหา) ซึ่งอยู่ที่ด้านซ้ายสุดของวงเล็บคู่อับละอองเกสรที่มีมันสามารถเอาออกได้ ตัวอย่างเช่นสิ่งนี้: ((a b) c) สามารถลดลงไปได้ (a b c) ตำแหน่ง(a b)ที่อยู่ทางซ้ายสุดของเครื่องหมายวงเล็บใหญ่กว่า((a b) c)ดังนั้นจึงสามารถลบออกได้ ตัวอย่างที่ใหญ่กว่าของความสัมพันธ์ด้านซ้าย (วงเล็บเหลี่ยมคือคำอธิบาย): ((a b) c ((d e) f (((g h) i) j))) = (a b c ((d e) f (((g h) …

2
ตีความ Kipple!
บทนำ Kippleเป็นภาษาการเขียนโปรแกรมแบบกองซ้อนซึ่งเป็นความลับที่คิดค้นโดย Rune Berg ในเดือนมีนาคม 2003 Kipple มี 27 กอง 4 ตัวดำเนินการและโครงสร้างการควบคุม สแต็ค สแต็กถูกตั้งชื่อa- zและมีจำนวนเต็ม 32 บิต นอกจากนี้ยังมีสแต็กพิเศษ@เพื่อให้หมายเลขเอาต์พุตสะดวกยิ่งขึ้น เมื่อตัวเลขถูกส่งเข้าสู่@ค่า ASCII ของตัวเลขนั้นจะถูกผลักเข้าไปแทน (ตัวอย่างเช่นหากคุณกด 12 ถึง@จะได้ 49 และ 50 @แทน) อินพุตถูกส่งไปยังอินพุตสแต็กiก่อนที่โปรแกรมจะถูกดำเนินการ ล่ามจะถามหาค่าที่จะจัดเก็บiก่อนดำเนินการ หลังจากการดำเนินการเสร็จสิ้นสิ่งใดในเอาท์พุทสแต็คoจะถูกตอกไปยังเอาท์พุทเป็นตัวอักษร ASCII เนื่องจากนี่เป็นเพียงกลไก IO ของ Kipple เท่านั้นการโต้ตอบกับโปรแกรม Kipple จึงเป็นไปไม่ได้ ผู้ประกอบการ ตัวถูกดำเนินการเป็นทั้งตัวระบุสแต็กหรือจำนวนเต็ม 32 บิตลงนาม กด: >หรือ< ไวยากรณ์: Operand>StackIndentifierหรือStackIndentifier<Operand ตัวดำเนินการพุชนำตัวถูกดำเนินการไปทางซ้ายแล้วผลักไปยังสแต็กที่ระบุ ตัวอย่างเช่น12>aจะส่งค่า 12 …
12 code-golf  interpreter  code-golf  string  code-golf  math  string  code-golf  ascii-art  path-finding  code-golf  string  ascii-art  code-golf  interpreter  binary  logic-gates  logic  code-golf  ascii-art  code-golf  graph-theory  code-golf  string  code-golf  number  sorting  code-golf  number-theory  random  cryptography  polynomials  code-golf  number  code-golf  math  number  sequence  code-golf  quine  code-generation  code-golf  arithmetic  set-theory  code-golf  sequence  code-golf  code-golf  string  math  fastest-code  optimization  code-golf  code-golf  internet  stack-exchange-api  code-golf  array-manipulation  code-golf  string  internet  string  code-challenge  internet  test-battery  code-golf  math  pi  code-golf  arithmetic  primes  code-golf  array-manipulation  code-golf  string  code-golf  string  palindrome  code-golf  sequence  number-theory  fastest-algorithm  code-golf  math  number  base-conversion  code-golf  number-theory  sorting  subsequence  search  code-golf  permutations  code-challenge  popularity-contest  code-generation 

4
สร้างเครื่องมือเพิ่มประสิทธิภาพ Nonographic Magnitude ™
Nonogram เป็นเกมปริศนาญี่ปุ่นที่มีเป้าหมายเพื่อวาดภาพขาวดำตามรายการของภูมิภาคที่อยู่ติดกันเช่น: กำหนดขนาด nonographicของแถวหรือคอลัมน์ให้เป็นจำนวนของพื้นที่สีดำที่ต่อเนื่องกันในแถวหรือคอลัมน์นั้น ตัวอย่างเช่นแถวบนสุดมีขนาดที่ไม่ใช่ทางภูมิศาสตร์เป็น 1 เนื่องจากมีหนึ่งพื้นที่ของ 2 สี่เหลี่ยมในแถวนั้น แถวที่ 8 มีขนาดไม่เกิน 3 เนื่องจากมี 2, 2, 1 แถวหรือคอลัมน์ว่างเปล่ามีขนาดที่ไม่ใช่ทางภูมิศาสตร์เป็น 0 งานของคุณคือการเขียนโปรแกรมที่ใช้ตารางวิธีแก้ปัญหาสำหรับ nonogram และสร้างตารางวิธีการแก้ปัญหาที่มีเต็มสี่เหลี่ยมน้อยที่สุดเท่าที่เป็นไปได้ที่ทุกแถวและคอลัมน์มี magnutide nonographic เดียวกับตารางโซลูชันที่กำหนด ตัวอย่างเช่นตารางที่ไม่ใช่สี่เหลี่ยมจัตุรัสที่เติมสี่เหลี่ยมทั้งหมดมีขนาดไม่เป็น 1 ในทุกแถวหรือคอลัมน์: ขนาด nonographic เดียวกันสามารถทำได้เพียงแค่มีแถบเส้นทแยงมุมผ่านตารางลดจำนวนสี่เหลี่ยมที่เต็มไปอย่างมาก: โปรแกรมของคุณจะได้รับอินพุตซึ่งประกอบด้วย 50,000 บรรทัดจากไฟล์นี้ (1.32 MB ไฟล์ข้อความ tar.gz; 2.15 MB unzipped) แต่ละไฟล์แสดงตารางการแก้ปัญหา nonogram ขนาด 16 × 16 ที่มีสี่เหลี่ยมจัตุรัสสุ่มสีดำ (80%) และ …

2
ล่ามสำหรับทฤษฎีจำนวนโมดูโล n
ประโยคของทฤษฎีจำนวน (สำหรับวัตถุประสงค์ของเรา) เป็นลำดับของสัญลักษณ์ต่อไปนี้: 0และ'(ตัวตายตัวแทน) - ตัวตายตัวแทนหมายถึง+1ดังนั้น0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(เพิ่มเติม) และ*(การคูณ) = (เท่ากับ) (และ)(วงเล็บ) ตัวดำเนินการเชิงตรรกะnand( a nand bคือnot (a and b)) forall (ปริมาณสากล) v0, v1, v2ฯลฯ (ตัวแปร) นี่คือตัวอย่างของประโยค: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) นี่not …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

5
หัวหอมหรือไม่หัวหอม?
หัวหอม (คำเตือน: บทความหลายเรื่องเป็น NSFW) เป็นองค์กรข่าวเหน็บแนมที่ล้อเลียนสื่อข่าวแบบดั้งเดิม ในปี 2014 The Onion เปิดตัวClickHole (คำเตือน: บ่อยครั้งที่ NSFW) เว็บไซต์ข่าวเสียดสีที่ล้อเลียนเว็บไซต์ "clickbait" เช่น BuzzFeed ต้องขอบคุณกฎหมายของโพจึงเป็นเรื่องปกติที่ผู้คนจะอ่านหัวข้อข่าวของ The Onion หรือ ClickHole และเชื่อว่าพวกเขาเป็นจริงโดยไม่รู้ว่าพวกเขาตั้งใจจะเสียดสี การสนทนายังเกิดขึ้นกับข่าวจริงที่ไร้สาระทำให้เกิดเสียง - ผู้คนมักคิดว่าพวกเขาเป็นถ้อยคำเมื่อพวกเขาไม่อยู่ ความสับสนนี้ทำให้ตัวเองเป็นเกม - ได้รับพาดหัวข่าว, พยายามที่จะเดาว่ามันเป็นการเสียดสีหรือไม่ ความท้าทายนี้เกี่ยวกับการทำเช่นนั้นกับโปรแกรม รับพาดหัวข่าว (สตริงที่ประกอบด้วยอักขระ ASCII และช่องว่างที่พิมพ์ได้เท่านั้น) เอาต์พุต1หากพาดหัวเป็นถ้อยคำหรือ0หากไม่ใช่ คะแนนของคุณจะเป็นจำนวนผลลัพธ์ที่ถูกต้องหารด้วยจำนวนหัวข้อทั้งหมด ตามปกติช่องว่างมาตรฐาน (โดยเฉพาะการปรับให้เหมาะสมที่สุดสำหรับกรณีทดสอบ ) ไม่ได้รับอนุญาต ในการบังคับใช้สิ่งนี้ฉันจะเรียกใช้โปรแกรมของคุณในชุดกรณีทดสอบที่ซ่อน 200 ชุด (100 ชุดจาก The Onion, 100 จาก …

4
ลบคำทักทาย
ท้าทาย สวัสดีให้สตริงเป็นอินพุตลบคำทักทายใด ๆ ที่พบในตอนเริ่มต้นของสตริง โปรแกรมที่จะทำการแทนที่ที่ถูกต้องที่สุดในเวลาไม่ถึง 50 ไบต์จะชนะ Memorial ~ เฮ้คำทักทายถูกกำหนดเป็นหนึ่งในคำต่อไปนี้: สวัสดี เฮ้ สวัสดี ที่รัก ทักทาย ไห่ ผู้ชาย Hii หมอตำแย Hiya หญ้าแห้ง Heya hola hihi คำขึ้นต้นจดหมาย อักษรตัวแรกอาจเป็นตัวพิมพ์ใหญ่ จะมีเครื่องหมายจุลภาคและ / หรือเว้นวรรคเดียวตามหลังคำทักทายซึ่งจะต้องถูกลบด้วย เครื่องหมายจุลภาคและพื้นที่อาจอยู่ในลำดับใด ๆ ( ,<space>หรือ<space>,) และควรลบทั้งสอง คำทักทายและคำต่อไปนี้จะคั่นด้วยเครื่องหมายจุลภาคและ / หรือเว้นวรรคเดียว จากนั้นคุณจะต้องใช้อักษรตัวแรกของคำที่จะตามหลังคำทักทาย แม้ว่าจะไม่มีการแทนที่เกิดขึ้นคุณก็ควรใช้ประโยชน์จากคำแรกของผลลัพธ์ การใช้อักษรตัวพิมพ์ใหญ่ใช้กับตัวอักษรตัวพิมพ์เล็กเท่านั้น ( abcdefghijklmnopqrstuvwxyz) คุณควรปล่อยให้ตัวละครอื่น ๆ เหมือนเดิม คำทักทายจะอยู่ที่จุดเริ่มต้นของสตริงเสมอ คุณไม่ควรแทนที่คำทักทายที่ไม่ได้อยู่ในช่วงเริ่มต้น อาจมีการทักทายไม่ได้เสมอไป รหัสของคุณต้องน้อยกว่า 50 …

3
พิมพ์ค่าเฉพาะใน Wythoff matrix modulo 2
Wythoff เมทริกซ์เป็นเมทริกซ์อนันต์ประกอบด้วยหมายเลขใจแคบของแต่ละตารางบนกระดานหมากรุกในเกม Wythoff ของ แต่ละรายการในเมทริกซ์นี้เท่ากับจำนวน nonnegative ที่เล็กที่สุดซึ่งไม่ปรากฏที่ใดก็ได้ด้านบนไปทางซ้ายหรือทิศตะวันตกเฉียงเหนือของแนวทแยงมุมของตำแหน่งของรายการ สี่เหลี่ยมจัตุรัสขนาด 20 คูณ 20 ด้านซ้ายบนมีลักษณะดังนี้: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 2 0 4 5 3 7 8 6 10 11 9 13 14 12 16 17 15 …

2
X ที่มากกว่า 3 มีความแตกต่างอย่างน้อย 2 อย่างระหว่าง X และ Y
ฉันกำลังพยายามตีกอล์ฟ C ++ บางตัว เป็นไปได้ไหมที่ทำให้สภาพนี้สั้นลง? X > 3 & X - Y > 1 (นอกเหนือจากการลบช่องว่างออกแน่นอน) ดังนั้นXอย่างน้อยแต่4X >= Y + 2 XและYเป็นจำนวนเต็มในช่วง [0,5] ฉันพยายามค้นหาสูตร bitwise แต่ล้มเหลว
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

2
สร้างช่องสัญญาณ RGB ที่หายไปใหม่
ดูภาพถ่ายธรรมชาติเหล่านี้ด้วยหนึ่งในช่อง RGB ที่นำออกมาจากพวกเขา: แหล่งที่มา (มีสีแดง): https://en.wikipedia.org/wiki/File:Altja_j%C3%B5gi_Lahemaal.jpg แหล่งที่มา (พร้อมสีเขียว): https://commons.wikimedia.org/wiki/File:2007_mather-lake_hg.jpg แหล่งที่มา (มีสีน้ำเงิน): https://commons.wikimedia.org/wiki/File:Fox_01.jpg แม้ว่าจะไม่มีช่องใดช่องหนึ่งคุณก็สามารถสร้างสีสันที่แน่นอนว่าควรจะเป็นสีอะไรหรืออย่างน้อยก็มีความคิดที่ดีถ้าการสร้างช่องสัญญาณที่หายไปนั้นมีความแม่นยำ ตัวอย่างเช่นนี่คือภาพแรกที่มีช่องสีแดงเพิ่มเข้ามาซึ่งเป็นเพียงสัญญาณรบกวนแบบสุ่ม: ภาพนี้ชัดเจนไม่ใช่การสร้างช่องสีแดงใหม่อย่างแม่นยำ นี่เป็นเพราะภาพถ่ายธรรมชาติไม่ได้ใช้สเปกตรัม RGB ทั้งหมด แต่เป็นเพียงชุดย่อยของ "สีที่ดูเป็นธรรมชาติ" นอกจากนี้เฉดสีแดงจะเป็นไปตามการไล่ระดับสีบางอย่างที่สัมพันธ์กับสีอื่น ๆ งานของคุณคือการสร้างโปรแกรมที่จะถ่ายภาพที่มีช่องหนึ่งออกและพยายามประมาณภาพต้นฉบับให้ใกล้เคียงที่สุดโดยสร้างสิ่งที่เชื่อว่าเป็นช่องที่หายไป โปรแกรมของคุณจะได้คะแนนว่าช่องที่ขาดหายไปนั้นตรงกับช่องของภาพต้นฉบับมากน้อยเพียงใดโดยการนับเปอร์เซ็นต์ของพิกเซลที่มีค่าของช่องนั้นภายใน± 15 (รวม) ของมูลค่าจริงในภาพต้นฉบับ (โดยที่ค่านั้น ช่วงจาก 0 ถึง 255 ในช่องสีมาตรฐาน 8 บิต) กรณีทดสอบที่โปรแกรมของคุณจะได้รับสามารถดูได้ที่นี่ (ไฟล์ซิป 9.04 MB, 6 ภาพ) ขณะนี้มันมีเพียงภาพสามภาพด้านบนและต้นฉบับของพวกเขา แต่ฉันจะเพิ่มอีกไม่กี่นาทีเพื่อสร้างชุดเต็มเมื่อฉันทำเสร็จแล้ว ภาพแต่ละภาพจะถูกลดขนาดลงและถูกตัดเหลือ 1024 x 768 ดังนั้นภาพเหล่านั้นจะมีน้ำหนักเท่ากันในคะแนนของคุณ โปรแกรมที่สามารถทำนายจำนวนพิกเซลมากที่สุดภายในความอดทนที่กำหนด

4
ค้นหาวิธีที่สั้นที่สุดเพื่อเลื่อนเคาน์เตอร์ไปยังหมายเลขที่กำหนด
ฉันมีเคาน์เตอร์ เป็นอุปกรณ์ขนาดเล็กที่มีลักษณะดังนี้: การแสดงผลไปจากการ0000 9999มีปุ่มกดเล็ก ๆ ที่ด้านบนที่เพิ่มการนับ 1 และลูกบิดเล็ก ๆ ด้านขวาซึ่งมีจุดประสงค์เพื่อรีเซ็ตตัวนับกลับเป็น 0 ตอนนี้สิ่งที่เกี่ยวกับปุ่มเล็ก ๆ คือถ้าคุณหมุนไปข้างหลังคุณสามารถเพิ่มตัวเลขใด ๆ ที่คุณต้องการได้เมื่อคุณหมุนมันไปข้างหน้าอีกครั้ง ดังนั้นถ้าฉันกดปุ่มนับ 10 ครั้งเพื่อให้การแสดงที่เคาน์เตอร์0010ผมแล้วสามารถเปิดย้อนกลับลูกบิดจนกว่าฉันจะได้ยินเสียงคลิกเล็ก ๆ 0090แล้วเปิดไปข้างหน้าอีกครั้งและทำให้มันตรงไปที่ แต่ลูกบิดจะเพิ่มตัวเลขที่เกิดขึ้นทั้งหมด 1 เสมอทุกครั้งที่ผลักตัวเลขไปข้างหน้า ดังนั้นหากการแสดงที่เคาน์เตอร์6060คุณสามารถทำให้มันเพิ่มขึ้นเป็น7070ไม่หรือ6070 7060นอกจากนี้ลูกบิดจะม้วน9s ไป0โดยไม่ดำเนินการดังนั้น0990จะเลื่อนไป0000แทนหรือ10001100 ฉันต้องการทราบวิธีที่มีประสิทธิภาพที่สุดในการตั้งค่าตัวนับเป็นตัวเลขที่แน่นอน งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่จะกำหนดลำดับที่สั้นที่สุดของการกดปุ่มและความก้าวหน้าของปุ่มที่จำเป็นในการทำเช่นนั้น โปรแกรมของคุณจะป้อนตัวเลข 4 หลักจาก0000ถึง9999และส่งคืนชุดของขั้นตอนในรูปแบบต่อไปนี้: > 0001 C > 0093 C12345678C12345678CCC > 1000 C12345678C12345678C12345678C12345678C12345678C12345678C12345678C > 9999 012345678 โดยที่Cสำหรับ "กดปุ่มตัวนับ" และตัวเลขใด ๆDจาก 0 ถึง …

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