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

กอล์ฟรหัสอะตอมคะแนนจากจำนวนของการดำเนินงานในส่วนที่เฉพาะเจาะจงของภาษาที่คุณกำหนด

16
ตรวจสอบว่าจำนวนเต็มหารด้วย 3 หรือไม่
เป้าหมายของคุณคือพิจารณาว่าตัวเลขหารด้วย 3 โดยไม่ใช้เงื่อนไขหรือไม่ อินพุตจะเป็นตัวเลข 8 บิตที่ไม่ได้ลงนามตั้งแต่ 0 ถึง 255 สนับสนุนให้ใช้ความคิดสร้างสรรค์! คุณได้รับอนุญาตเท่านั้นที่จะใช้ ความเท่าเทียมกัน / ความไม่เท่าเทียมกัน ( ==, !=, >, <, >=, <=) เลขคณิต ( +, -, x) ผู้ประกอบการเชิงตรรกะ ( !ไม่ใช่, &&และ, || หรือ) Bitwise ผู้ประกอบการ ( ~ไม่&และ|หรือ^แฮคเกอร์, <<, >>, >>>คณิตศาสตร์และตรรกะซ้ายกะขวา) ค่าคงที่ (จะดีกว่าถ้าคุณเก็บสิ่งเล็ก ๆ เหล่านี้ไว้) การมอบหมายตัวแปร เอาต์พุต0ถ้าเป็นเท็จ1ถ้าเป็นจริง มีการใช้กฎรหัสอะตอมมิกแบบมาตรฐาน หากคุณมีคำถามใด ๆ โปรดทิ้งไว้ในความคิดเห็น วิธีการตัวอย่างที่นี่ …

2
สร้างเครื่องทวีคูณโดยใช้ประตูตรรกะ NAND
จากคำถามก่อนหน้านี้ในประเภทเดียวกันสร้างเครื่องเพิ่มโดยใช้ประตูตรรกะ NANDคราวนี้คุณจะถูกขอให้คูณด้วยแทนที่จะเพิ่ม สร้างแผนภาพของประตู (สองสาย) ตรรกะ NAND ที่จะนำสายไฟอินพุตA1, A2, A4, B1, B2, B4คิดเป็นสองเลขฐานสองAไปB0-7 และค่าตอบแทนจากการใช้สายไฟเอาท์พุทC1, C2, C4, C8, C16และC32เป็นตัวแทนC, ซึ่งเป็นผลิตภัณฑ์ของและAB คะแนนของคุณถูกกำหนดโดยจำนวนประตู NAND ที่คุณใช้ (1 คะแนนต่อประตู) เพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นคุณสามารถใช้ประตู AND, OR, NOT และ XOR ในแผนภาพของคุณด้วยคะแนนที่สอดคล้องกันดังต่อไปนี้: NOT: 1 AND: 2 OR: 3 XOR: 4 แต่ละคะแนนเหล่านี้สอดคล้องกับจำนวนประตู NAND ที่ใช้ในการสร้างประตูที่สอดคล้องกัน คะแนนต่ำสุดชนะ

19
ทำให้โปรแกรมสามเหลี่ยมเป็นสิ่งที่ถูกต้อง
Triangularityเป็น esolang ใหม่ที่พัฒนาโดยMr. Xcoderโดยที่โครงสร้างของโค้ดต้องเป็นไปตามรูปแบบที่เฉพาะเจาะจงมาก: สำหรับnบรรทัดที่รหัสจะต้องมี2n-1ตัวอักษรของโปรแกรมอย่างแน่นอน สิ่งนี้ทำให้เกิดรูปสามเหลี่ยม / ปิรามิดโดยที่บรรทัดแรกมีอักขระเพียงตัวเดียวและส่วนที่เหลือเพิ่มขึ้นทีละ 2 แต่ละบรรทัดจะต้องมีการบุด้วย.s ที่ด้านซ้ายและขวาเช่นตัวละครที่มีศูนย์กลางอยู่ที่เส้นของพวกเขาและทุกบรรทัดจะมีความยาวเบาะเดียวกัน หากlกำหนดเป็นจำนวนบรรทัดในโปรแกรมแต่ละบรรทัดในโปรแกรมต้องมีความยาว2 * l - 1 ตัวอย่างเช่นโปรแกรมทางด้านซ้ายนั้นถูกต้อง แต่โปรแกรมทางด้านขวาไม่ใช่: Valid | Invalid | ...A... | ABCDE ..BCD.. | FGH .EFGHI. | IJKLMN JKLMNOP | OPQRS เมื่อวางในโครงสร้างที่ถูกต้องชื่อจะชัดเจน งาน งานของคุณคือการใช้สตริงบรรทัดเดียวเป็นอินพุตแทนรหัสสามเหลี่ยมและเอาท์พุทมันแปลงเป็นรหัสที่ถูกต้องตามที่อธิบายไว้ข้างต้น ข้อมูลจำเพาะสำหรับ I / O: ข้อมูลที่ป้อนจะมีอักขระอยู่ในช่วงเท่านั้น 0x20 - 0x7e ความยาวของอินพุตจะเป็นตัวเลขจตุรัสเสมอ คุณต้องใช้จุดสำหรับการขยายช่องว่างไม่ใช่อย่างอื่น คุณสามารถอินพุตและเอาต์พุตด้วยวิธีการที่ยอมรับได้ นี่คือรหัสกอล์ฟเพื่อให้โค้ดที่สั้นที่สุดเป็นไบต์ชนะ! กรณีทดสอบ …
19 code-golf  string  code-golf  combinatorics  code-golf  math  number  code-golf  matrix  code-golf  string  decision-problem  code-golf  internet  code-golf  number  number-theory  integer  expression-building  code-challenge  primes  cops-and-robbers  obfuscation  code-challenge  primes  cops-and-robbers  obfuscation  code-golf  string  balanced-string  code-golf  quine  code-generation  code-golf  matrix  code-golf  tips  c#  code-golf  ascii-art  code-golf  ascii-art  source-layout  code-golf  quine  source-layout  popularity-contest  language-design  code-golf  array-manipulation  subsequence  code-golf  matrix  math  code-challenge  game  graph-theory  atomic-code-golf  code-golf  number  integer  polynomials  equation  code-golf  array-manipulation  sorting 

5
มีวัตถุแข็งหรือวัตถุนิ่ม ๆ หรือไม่
ได้รับแรงบันดาลใจจากการเปิดหนังสือ What-If อินพุตเป็นสี่เหลี่ยมผืนผ้าของช่องว่างในรูปของสตริงรายการของสตริง ฯลฯ โดยมีวัตถุที่ทำจาก#ภายใน: ######## # # ######## ### #### ### #### ### วัตถุจะไม่ตัดกันไม่สัมผัสสี่เหลี่ยม วัตถุนุ่มถูกกำหนดให้เป็นวัตถุที่ไม่ได้#อยู่ตรงกลางและเป็นเพียงเส้นขอบวัตถุแข็งคือวัตถุที่เต็มไป วัตถุที่มีความกว้างหรือความสูง<=2ถือว่ายาก วัตถุทั้งหมดมีความแข็งหรืออ่อน หากมีวัตถุแข็งมากขึ้นในการป้อนข้อมูลการส่งออก"Hard"ถ้ามากขึ้นนุ่มผลผลิต"Soft"ถ้าพวกเขามีค่าเท่ากัน, "Equal"เอาท์พุท นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ! กรณีทดสอบ กรณีเหล่านี้ไม่ได้ป้อนข้อมูลเต็ม แต่ควรระบุว่าแต่ละวัตถุควรเป็นอย่างไร การป้อนข้อมูลจริงจะเป็นแบบ ascii-art ที่ด้านบนของคำถาม ยาก # #### ## ## ########## ########## ########## อ่อนนุ่ม ### # # ### ################### # # # # # # ################### …
19 code-golf  ascii-art  counting  code-golf  number  grid  decision-problem  chess  code-golf  grid  graph-theory  chess  code-golf  math  geometry  code-golf  arithmetic  roman-numerals  fastest-code  code-golf  math  geometry  code-golf  string  cryptography  code-golf  number  sequence  decision-problem  code-golf  string  parsing  c  code-golf  sorting  integer  code-golf  number  sequence  rational-numbers  graphical-output  atomic-code-golf  assembly  box-256  code-golf  geometry  tips  python  code-golf  number  sequence  arithmetic  number-theory  code-golf  ascii-art  kolmogorov-complexity  geometry  code-golf  graphical-output  code-golf  math  code-golf  grid  cellular-automata  game-of-life  code-golf  string  subsequence  code-golf  arithmetic  rational-numbers  code-golf  tips  dc  code-golf  ascii-art  kolmogorov-complexity  date  code-golf  string  primes  code-golf  string  natural-language  conversion  code-golf  sequence  code-golf  number-theory  primes  base-conversion  code-golf  math  primes  base-conversion  code-golf  ascii-art  fractal  code-golf  matrix  code-golf  math  tips  geometry  python  string  code-challenge  keyboard  code-golf  graphical-output  code-golf  string  code-golf  number  sequence  cops-and-robbers  number  sequence  cops-and-robbers 

2
เขียนลงในรูปแบบทฤษฎีจำนวน
เขียนข้อความทางคณิตศาสตร์โดยใช้สัญลักษณ์: There exists at least one non-negative integer(เขียนเป็นEตัวบ่งชี้ที่มีอยู่) All non-negative integers(เขียนเป็นAปริมาณสากล) + (ส่วนที่เพิ่มเข้าไป) * (คูณ) = (ความเสมอภาค) >, <(ตัวดำเนินการเปรียบเทียบ) &(และ), |(หรือ), !(ไม่) (, )(สำหรับการจัดกลุ่ม) ชื่อตัวแปร ซึ่งเทียบเท่ากับคำสั่ง มีจำนวนตรรกยะจำนวน a อยู่เช่นπ + e * a มีเหตุผล (แน่นอนπ= 3.1415 ...π=3.1415 ...\pi =3.1415...คือค่าคงที่ทางคณิตศาสตร์เท่ากับเส้นรอบวงหารด้วยเส้นผ่านศูนย์กลางของวงกลมและe = 2.7182 ...อี=2.7182 ...e=2.7182...คือจำนวนของออยเลอร์ ) คุณต้องพิสูจน์ว่าข้อความของคุณนั้นเทียบเท่ากับข้อความข้างต้น เห็นได้ชัดว่าวิธี "สั้นที่สุด" ที่จะไปเกี่ยวกับเรื่องนี้คือการพิสูจน์ข้อความจริงหรือเท็จแล้วตอบด้วยข้อความจริงเล็กน้อยหรือเท็จเนื่องจากข้อความจริงทั้งหมดเทียบเท่ากันเช่นเดียวกับข้อความเท็จทั้งหมด อย่างไรก็ตามคุณค่าความจริงของแถลงการณ์ที่ระบุนั้นเป็นปัญหาที่ยังไม่แก้ในวิชาคณิตศาสตร์ : …

4
วันที่บีบอัดของสัปดาห์
กำหนดอินพุตของรายการวันในสัปดาห์เอาท์พุทการเรียงลำดับที่สั้นที่สุดของรายการ รูปแบบของการป้อนข้อมูลที่เป็นสตริงประกอบด้วยหนึ่งหรือมากกว่าของสตริงสองตัวอักษรSu(วันอาทิตย์), Mo(วันจันทร์) Tu( ฯลฯ ) We, Th, และFr Saอินพุตอาจไม่จำเป็นต้องถูกจัดเรียงตามลำดับ ในการแปลงอินพุตเป็นรูปแบบเอาต์พุต จัดเรียงอินพุตตามวันในสัปดาห์โดยเริ่มจากวันอาทิตย์ (เช่นThMoSaSuFrTuWe-> SuMoTuWeThFrSa) ลดตัวย่อลงไปหนึ่งตัวอักษรถ้ามันไม่มีใบความคลุมเครือ ตัวอย่างเช่นSuMoTuWeควรเป็นSMTWเพราะ S ตัวแรกไม่สามารถเป็นวันเสาร์ได้เนื่องจากจะทำให้เอาต์พุตไม่ได้เรียงลำดับ (เหมือนกันสำหรับ T) อย่างไรก็ตามThFrSaควรเป็นThFSเช่นวันอังคารและวันพฤหัสบดีมาก่อนวันศุกร์และลดลงเพื่อTFSสร้างความกำกวม หากเอาท์พุทเป็นตอนนี้MTWTFเอาท์พุทDแทน (ซึ่งหมายถึง "สัปดาห์วัน ") ในทำนองเดียวกันSSควรจะเป็นEสำหรับสัปดาห์สิ้นสุด ในที่สุด SMTWTFSควรกลายเป็นAสำหรับทุกวัน ทั้งอินพุตและเอาต์พุตต้องเป็นสตริงเดี่ยว เนื่องจากนี่คือcode-golfรหัสที่สั้นที่สุดเป็นไบต์จะเป็นผู้ชนะ กรณีทดสอบ: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | …

15
ค้นหาตัวเลขสูงสุด 3 หมายเลขโดยไม่ต้องแยกสาขา
คราวนี้เป้าหมายของคุณคือการหาจำนวนเต็ม 3 จำนวน (จาก - (2 ^ 31) ถึง 2 ^ 31 - 1 ในส่วนเสริมของไบนารี 2) โดยไม่ต้องใช้การแยกหรือลูป คุณได้รับอนุญาตให้ใช้เท่านั้น ความไม่เท่าเทียมกัน / ความเท่าเทียมกัน ( ==, >, >=, <, <=, !=) นับเหล่านี้เป็น2ราชสกุล เลขคณิต ( +, -, *, /) ผู้ประกอบการเชิงตรรกะ ( !ไม่ใช่, &&และ, || หรือ) Bitwise ผู้ประกอบการ ( ~ไม่&และ|หรือ^แฮคเกอร์, <<, >>, >>>คณิตศาสตร์และตรรกะซ้ายกะขวา) ค่าคงที่ 0 …

1
Hopping Bunny ของ Google
เมื่อวันที่ 4 ธันวาคม 2017 ของ Google Doodle เป็นเกมการเขียนโปรแกรมแบบกราฟิกที่มีกระต่าย ระดับต่อมาได้อย่างไม่น่ารำคาญและพวกเขาดูเหมือนจะเป็นผู้สมัครที่ดีสำหรับอะตอมกอล์ฟที่ท้าทาย รายละเอียด เกม มีการเคลื่อนไหวสี่อย่าง: กระโดดไปข้างหน้าเลี้ยวซ้ายเลี้ยวขวาและวนรอบ แต่ละการเคลื่อนไหวเหล่านี้เป็นโทเค็นเดียวซึ่งสอดคล้องกับความจริงที่ว่าพวกเขาเป็นหนึ่งไทล์ในเกม กระต่ายสามารถเผชิญหน้ากับทิศทางทั้งสี่ทิศ (เช่นทิศเหนือทิศใต้ทิศตะวันออกทิศตะวันตก) กระต่ายสามารถกระโดดไปข้างหน้า (เลื่อนไปหนึ่งช่องในทิศทางที่หันหน้าไป) แล้วเลี้ยวซ้ายหรือขวา ลูปอาจมีจำนวนของการเคลื่อนไหวอื่น ๆ ภายในพวกเขารวมถึงลูปอื่น ๆ และจำนวนการวนซ้ำของพวกเขาคือจำนวนเต็มบวกใด ๆ กระดานเป็นชุดของตารางที่จัดชิดตารางและกระต่ายสามารถกระโดดระหว่างสี่เหลี่ยมที่อยู่ติดกัน กระต่ายไม่สามารถกระโดดเข้าไปในความว่างเปล่าได้ หมายความว่าการพยายามกระโดดออกจากกระดานไม่ได้ทำอะไรเลย (นี่เป็นเรื่องน่าประหลาดใจสำหรับบางคนและทำให้คนอื่นผิดหวัง) สี่เหลี่ยมจะถูกทำเครื่องหมายหรือไม่ทำเครื่องหมาย เมื่อกระต่ายอยู่ในรูปสี่เหลี่ยมมันจะถูกทำเครื่องหมาย ระดับเสร็จสมบูรณ์เมื่อทำเครื่องหมายสี่เหลี่ยมทั้งหมด คุณอาจคิดว่ามีวิธีแก้ปัญหาอยู่ รหัสของคุณ วัตถุประสงค์: ให้คณะกรรมการค้นหาวิธีแก้ปัญหาที่สั้นที่สุดหนึ่งรายการหรือมากกว่า การป้อนข้อมูลเป็นรายการของสแควร์ที่ตั้งคณะกรรมการ (แยกความแตกต่างสี่เหลี่ยมที่ทำเครื่องหมายและไม่ได้ทำเครื่องหมาย) และเอาท์พุทเป็นรายการของการเคลื่อนไหว รูปแบบอินพุตและเอาต์พุตไม่สำคัญเลยตราบใดที่รูปแบบที่มนุษย์สามารถอ่านและเข้าใจได้ เกณฑ์การชนะ:ผลรวมของจำนวนการเคลื่อนไหวของการแก้ปัญหาที่สั้นที่สุดที่พบภายในหนึ่งนาทีสำหรับแต่ละกระดาน หากโปรแกรมของคุณไม่พบวิธีแก้ปัญหาสำหรับบอร์ดใด ๆ คะแนนของคุณสำหรับบอร์ดนั้นคือ (5 * จำนวนสี่เหลี่ยม) โปรดอย่าแก้ไขปัญหาฮาร์ดโค้ดในลักษณะใด ๆ รหัสของคุณควรจะนำบอร์ดใด …

1
สร้างเครื่องเพิ่ม minifloat โดยใช้ประตูตรรกะ NAND
minifloatเป็นตัวแทนไบนารีของจำนวนจุดลอยตัวที่มีบิตน้อยมาก minifloat ในคำถามนี้จะถูกกำหนดเป็นหมายเลข 6 บิตmซึ่งมีการแสดงต่อไปนี้: 1 บิตเพื่อแสดงสัญลักษณ์ของตัวเลข บิตนี้จะเป็น0ถ้าจำนวนเป็นบวกและ1ถ้าจำนวนเป็นลบ 3 บิตเพื่อแสดงเลขชี้กำลังของจำนวน, ชดเชยด้วย3(เช่นเลขชี้กำลังของ110จริงแสดงถึงปัจจัยของ 2 3 , ไม่ใช่ 2 6 ) เลขชี้กำลังของ 000หมายถึงจำนวนย่อย แมนทิสซาหมายถึงส่วนที่เป็นเศษส่วนของจำนวนที่มีส่วนจำนวนเต็ม0คูณด้วยปัจจัยของเลขชี้กำลังต่ำสุดที่เป็นไปได้ (ในกรณีนี้ 2 -2 ) 2 บิตเพื่อแทนแมนทิสซาของจำนวน หากเลขชี้กำลังเป็นอะไรอื่นนอกจาก000หรือ111ที่ 2 1บิตแทนส่วนบางส่วนหลังจากที่ เลขชี้กำลังของการ111แทนinfinityว่า mantissa เป็น0และNaN(ไม่ใช่ตัวเลข) เป็นอย่างอื่น ในบทความ Wikipedia สิ่งนี้จะเรียกว่า minifloat (1.3.2.3) ตัวอย่างบางส่วนของการเป็นตัวแทนของ minifloat นี้: 000000 = 0.00 = 0 000110 = 1.10 …

2
ทศนิยมที่อัดแน่น (DPD) เป็นทศนิยมพร้อมกับลอจิกเกต
แรงบันดาลใจจากความนิยมล่าสุดของnandgameบน TNB และความท้าทายของตัวเองก่อน พื้นหลัง ทศนิยมที่อัดแน่น (DPD)คือวิธีการจัดเก็บทศนิยมอย่างมีประสิทธิภาพในไบนารี มันเก็บทศนิยมสามหลัก (000 ถึง 999) ใน 10 บิตซึ่งมีประสิทธิภาพมากขึ้นกว่าไร้เดียงสา BCD (ซึ่งเก็บหนึ่งหลักใน 4 บิต) ตารางการแปลง DPD ถูกออกแบบมาเพื่อแปลงระหว่างบิตและตัวเลขอย่างง่ายดายโดยการจับคู่รูปแบบอย่างง่ายจากบนลงล่าง แต่ละรูปแบบบิตกำหนดจำนวนตัวเลขสูง (8-9) จำนวนที่พวกเขาอยู่และวิธีการย้ายบิตไปยังรูปแบบการแทนทศนิยม ต่อไปนี้เป็นตารางการแปลงจาก 10 บิตของ DPD เป็นทศนิยมสามหลัก ทศนิยมแต่ละหลักจะแสดงเป็นไบนารี 4 บิต (BCD) ทั้งสองข้างถูกเขียนจากซ้ายไปขวาจากตัวเลขที่สำคัญที่สุดไปถึงอย่างน้อยที่สุด Bits => Decimal (Digit range) a b c d e f 0 g h i => 0abc …

3
การกวาดทุ่นระเบิด Hexcellent
Hexcells เป็นเกมที่ใช้Minesweeperเล่นกับรูปหกเหลี่ยม (การเปิดเผยอย่างเต็มรูปแบบ: ฉันไม่มีส่วนเกี่ยวข้องกับ Hexcells จริงๆแล้วฉันไม่ชอบเกม) กฎของ Hexcells ส่วนใหญ่สามารถแสดงได้อย่างง่ายดายใน Generalines Minesweeper (Minesweeper เล่นบนกราฟโดยพลการ) สิ่งที่ยากที่สุดคือกฎ{X}และ-X- {X}กฎบอกเราว่ามือถือที่มีพรมแดนติดกับXเหมืองแร่และว่าทั้งหมดของการทำเหมืองแร่เหล่านี้ชายแดนแต่ละอื่น ๆ ในเส้นทางต่อเนื่อง ตัวอย่างเช่นถ้าเรามีกระดาน: ? ? ? {3} ? ? ? ความเป็นไปได้ 6 ประการสำหรับการวางตำแหน่งเหมืองคือ * . . . . . . * * * * * * {3} . * {3} . . {3} * . …

5
รับสองจากหนึ่ง
ดังที่เราเห็นในคำถามนี้คำแถลงเชิงตรรกะที่ซับซ้อนสามารถแสดงออกได้ในแง่ของการเชื่อมต่ออย่างง่ายของเรือกวาดทุ่นระเบิดทั่วไป อย่างไรก็ตามเรือกวาดทุ่นระเบิดทั่วไปยังคงมีความซ้ำซ้อน เพื่อหลีกเลี่ยงความซ้ำซ้อนเหล่านี้เราได้กำหนดเกมใหม่ที่เรียกว่า "Generalized-1 Minesweeper" Generalized-1 Minesweeper เป็นเวอร์ชั่น Minesweeper ที่เล่นบนกราฟโดยพลการ กราฟมีจุดสุดยอดสองประเภทคือ "ตัวบ่งชี้" หรือ "ค่า" ค่าสามารถเป็นได้ทั้งเปิดหรือปิด (ทุ่นระเบิดหรือทึม) อย่างไรก็ตามสถานะของมันไม่เป็นที่รู้จักของผู้เล่น ตัวบ่งชี้บอกว่าหนึ่งในเซลล์ที่อยู่ติดกันอยู่บน (เหมือง) ตัวบ่งชี้ไม่นับเป็นเหมือง ตัวอย่างเช่นบอร์ดต่อไปนี้สำหรับเรือกวาดทุ่นระเบิด Generalized บอกเราว่าเซลล์ A และ B เป็นได้ทั้งเหมืองหรือไม่เป็นเหมือง (ในไดอะแกรมตัวบ่งชี้ถูกทำเครื่องหมายเป็นสีเทาในขณะที่ค่าเป็นสีขาว) ซึ่งแตกต่างจากเรือกวาดทุ่นระเบิดทั่วไปที่คุณคลิกค่าที่ปิดเพื่อแสดงตัวบ่งชี้ไม่มีช่างดังกล่าวในเรือกวาดทุ่นระเบิดทั่วไป ผู้เล่นเพียงแค่กำหนดว่ารัฐของกราฟสามารถตอบสนองตัวบ่งชี้ เป้าหมายของคุณคือสร้าง2เรือกวาดทุ่นระเบิด General-1 คุณจะสร้างโครงสร้างในทั่วไป-1 เรือกวาดทุ่นระเบิดดังกล่าวว่ามี 8 เซลล์ที่เฉพาะเจาะจงสำหรับการกำหนดค่าที่เป็นไปได้ทั้งหมดของค่าได้ว่าสองเซลล์บน นี่หมายความว่ามันทำงานได้ดีเหมือน2ในเรือกวาดทุ่นระเบิดแบบดั้งเดิม เมื่อคุณเขียนวิธีการแก้ปัญหาของคุณคุณไม่ควรมีค่าเฉพาะในใจสำหรับเซลล์ค่า (ในการตอบคำถามของ H.PWiz อนุญาตให้เซลล์ค่าบางค่าสามารถอนุมานได้จากสถานะ) เกณฑ์การให้คะแนน คำตอบของคุณจะได้รับคะแนนตามจำนวนของจุดยอดในกราฟสุดท้ายลบ 8 (สำหรับ 8 อินพุต) โดยมีคะแนนต่ำกว่าจะดีกว่า หากคำตอบสองคำเสมอกันในเมตริกนี้ตัวแบ่งไทเบรกจะเป็นจำนวนขอบ

4
ค้นหารหัสผ่าน
รหัสล็อคแบบ N หลักทั่วไปประกอบด้วยดิสก์หมุน N ตัว แผ่นดิสก์แต่ละแผ่นมีตัวเลข 0-9 ตามลำดับและคุณต้องเปลี่ยนเป็นรหัสผ่านที่ถูกต้องเพื่อเปิด แน่นอนถ้าคุณไม่ทราบว่ารหัสผ่านที่คุณจะต้องพยายามที่มากที่สุด 10 Nครั้งก่อนที่จะปลดล็อคมัน นั่นไม่น่าสนใจ ลองพิจารณาชุดตัวล็อคที่แตกต่างกันลองตั้งชื่อตัวล็อคการเปิดเผยระยะทาง ในความพยายามทุกครั้งที่ไม่ประสบความสำเร็จในการเปิดล็อคระยะห่างมันจะตอบสนองจำนวนการเคลื่อนไหวขั้นต่ำเพื่อปลดล็อก หนึ่งการเคลื่อนไหวถูกกำหนดให้เป็นหมุนโดยตำแหน่งหนึ่งเช่นจะต้องเคลื่อนไหว 1 จาก890ไป899และ 9 การเคลื่อนไหวจากการ137952 ความท้าทาย เมื่อไม่ทราบรหัสล็อคให้ลองเปิดล็อคด้วยจำนวนครั้งน้อยที่สุด(ไม่ใช่การเคลื่อนไหว) ขณะที่โปรแกรมไม่ให้ยาวเกินไป กฏและสกอร์ คุณควรเขียนโปรแกรมเต็มรูปแบบซึ่งอินพุตจาก stdin และเอาต์พุตไปยัง stdout โปรแกรมควรทำอินพุต / เอาต์พุตดังต่อไปนี้: Start Input an integer N (number of digits) from stdin Do Output a line containing decimal string of length N …

4
สร้างเครื่องทดสอบการเชื่อมต่อ 4 จุดยอดโดยใช้ประตู NAND
เชื่อมต่อกราฟเป็นกราฟที่ประกอบด้วยเส้นทางระหว่างสองจุดที่ ท้าทาย สร้างวงจร [อินพุต NAND-gate] ที่กำหนดว่าจะเชื่อมต่อกราฟ 4 จุดยอดหรือไม่ (อินพุต 2 รายการของเกตสามารถเป็นบิตอินพุตเดียวกันหรือเกตอื่น ๆ ) เอาท์พุทเป็นจริงถ้ากราฟเชื่อมต่ออยู่และเท็จเป็นอย่างอื่น อินพุต หกขอบที่เป็นไปได้ของกราฟอย่างง่ายที่มี 4 จุดยอด: [ 0 e 1 , 0 e 2 , 1 e 2 , 0 e 3 , 1 e 3 , 2 e 3 ] ที่จขหมายถึงว่ามีขอบระหว่างจุดและข การเชื่อมต่อจะเทียบเท่ากับเงื่อนไขต่อไปนี้: หากอินพุตน้อยกว่า 3 อินพุตเป็น True ให้เอาต์พุตเท็จ …

6
ใช้ adder 8 บิต
ความท้าทาย ใช้ฟังก์ชั่นที่รับจำนวนเต็มสองจำนวนซึ่งมีค่าอยู่ในช่วงตั้งแต่ 0 - 255 และส่งคืนผลรวมของจำนวนเต็ม mod 256 เหล่านั้นคุณสามารถใช้การปฏิเสธ bitwise (~), bitwise หรือ (|), ตัวดำเนินการเปลี่ยนบิต (>>, <<) และและการมอบหมาย (=) สิ่งที่คุณไม่สามารถใช้รวมถึง (แต่ไม่ จำกัด เฉพาะ) การบวกการลบการคูณและการหาร ลูป คำสั่งแบบมีเงื่อนไข ฟังก์ชั่นการโทร ใช้น้อยที่สุดของไบนารีหรือปฏิเสธไบนารีและกะบิตชนะการดำเนินงาน ในกรณีที่เสมอกันโซลูชันที่ได้รับความนิยมมากที่สุดจะเป็นผู้ชนะ เช่นเคยใช้ช่องโหว่มาตรฐาน นี่คือตัวอย่างของแอดเดอร์ 2 บิตที่เรียบง่าย มันใช้การปฏิเสธไบนารี 77 รายการไบนารี ORS 28 รายการและ 2 บิตกะเป็นคะแนนรวม 107 (สามารถดูได้จากการรัน C preprocessor ด้วยgcc -E) มันสามารถทำให้มีประสิทธิภาพมากขึ้นโดยการลบ#defines และลดความซับซ้อนของการแสดงออกที่เกิดขึ้น แต่ฉันได้ทิ้งไว้เพื่อความชัดเจน …

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