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

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

6
เข้ารหัสโปรแกรมที่มีตัวอักขระต่างกันน้อยที่สุดเท่าที่จะเป็นไปได้
เป้าหมายคือการเขียนโปรแกรมที่เข้ารหัสโปรแกรมอื่น (อินพุต) ด้วยอักขระที่น้อยที่สุดเท่าที่จะเป็นไปได้ เกณฑ์การให้คะแนน คะแนนเท่ากับจำนวนอักขระที่ต้องการสำหรับเอาต์พุต คะแนนต่ำกว่าดีกว่า กฎระเบียบ ไม่มีภาษาเป้าหมายที่มีชุดคำสั่งที่ จำกัด (ไม่มี Brainf ** k, Whitespace และอื่น ๆ ) แก้ไข : ฉันหมายถึงอักขระที่สำคัญอย่างน้อย 26 ตัวAไม่เปลี่ยนวิธีการทำงานของโปรแกรม brainf ** k ดังนั้นคุณจึงไม่สามารถนับตัวละครนี้ได้ เช่นเดียวกับช่องว่าง ต้องมีภาษาเป้าหมายในเวลาที่เขียนคำถามนี้ คุณต้องรวมคำอธิบายเล็ก ๆ น้อย ๆ ว่าคุณเก็บคะแนนของคุณอย่างไร โปรแกรมอินพุตถูกต้อง โปรแกรมที่เข้ารหัสต้องเป็นโปรแกรมที่ถูกต้องในภาษาเดียวกันกับอินพุต โปรแกรมที่เข้ารหัสต้องทำงานเช่นเดียวกับโปรแกรมต้นฉบับ โปรแกรมเปลี่ยนไฟล์ของคุณต้องใช้งานได้กับทุกโปรแกรมที่ใช้งานได้ในภาษานั้น ๆ รวมตัวอย่างอินพุตและเอาต์พุตตัวอย่าง หมายเหตุ โปรแกรมเปลี่ยนไฟล์อาจเขียนเป็นภาษาใดก็ได้ไม่เพียง แต่เป็นภาษาเป้าหมายเท่านั้น นี่ไม่ใช่โปรแกรมอ่านโค้ดที่ได้รับการสนับสนุน เป้าหมายที่ยิ่งใหญ่คือการดูว่าจำเป็นต้องใช้อักขระจำนวนเท่าใดในการเขียนสิ่งใด ๆ ในภาษานั้น ฉันไม่อนุญาตให้ BF ฯลฯ เพราะจะไม่มีการท้าทาย …

1
ติดตั้งเลขทศนิยมแบบไบนารีของ IEEE 754 64- บิตผ่านการจัดการจำนวนเต็ม
(ฉันติดแท็กคำถาม "C" ในขณะนั้น แต่ถ้าคุณรู้ภาษาอื่นที่สนับสนุนสหภาพคุณสามารถใช้มันได้) งานของคุณคือการสร้างตัวดำเนินการทางคณิตศาสตร์สี่มาตรฐาน+ - * /สำหรับโครงสร้างต่อไปนี้: union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } เช่นว่าการดำเนินการของตัวเองเท่านั้นที่จะจัดการหรือเข้าถึงส่วนจำนวนเต็ม (ดังนั้นจึงไม่มีการเปรียบเทียบกับสองครั้งตลอดเวลาในระหว่างการดำเนินการอย่างใดอย่างหนึ่ง) และผลที่ได้คือเหมือนกัน (หรือเทียบเท่าตามหน้าที่ในกรณีของผลลัพธ์ที่ไม่ใช่ตัวเลขเช่นNaN) ราวกับว่าการดำเนินการทางคณิตศาสตร์ที่สอดคล้องกันถูกนำไปใช้โดยตรงกับdoubleแทน คุณอาจเลือกส่วนจำนวนเต็มเพื่อจัดการแม้กระทั่งการใช้ส่วนต่าง ๆ ในตัวดำเนินการที่แตกต่างกัน (คุณสามารถเลือกที่จะลบ "unsigned" ออกจากฟิลด์ใด ๆ ในสหภาพได้แม้ว่าฉันไม่แน่ใจว่าต้องการทำเช่นนั้นหรือไม่) คะแนนของคุณคือผลรวมของความยาวของรหัสเป็นอักขระสำหรับผู้ให้บริการแต่ละราย คะแนนต่ำสุดชนะ สำหรับพวกเราที่ไม่คุ้นเคยกับข้อกำหนด IEEE 754 นี่เป็นบทความเกี่ยวกับเรื่องนี้ใน Wikipedia การแก้ไข: 03-06 …

14
พิมพ์ NxN หมุนวนของตัวเลขจากน้อยไปมาก [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัพเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Code Golf Stack Exchange ปิดให้บริการใน2 ปีที่ผ่านมา ควรพิมพ์ตัวเลขด้วยเลขศูนย์นำหน้าในฟิลด์ที่มีความยาว = (จำนวนหลัก N ^ 2) อินพุต (N): 4 เอาท์พุท: 01 12 11 10 02 13 16 09 03 14 15 08 04 05 06 07 ฉันสนใจในอัลกอริทึมและความสะอาดของการใช้งาน ดังนั้นพื้นที่สีขาวจะไม่นับและขีด จำกัด บนของ N คือ 42

2
การล่าไข่ในสไตล์ Collatz
แรงบันดาลใจจากThe Great API Easter Egg Hunt! สรุป งานของคุณคือการค้นหาจำนวนเต็มที่กำหนดไว้ล่วงหน้าใน "พื้นที่ Collatz" (จะอธิบายในภายหลัง) โดยใช้ขั้นตอนน้อยที่สุดที่เป็นไปได้ บทนำ ความท้าทายนี้มีพื้นฐานมาจากการคาดคะเน Collatz ที่มีชื่อเสียงซึ่งหวังว่าทุกคนที่นี่จะได้ยิน นี่คือสรุปที่นำมาจากพิมพ์ตัวเลขซูเปอร์ Collatz Collatz ลำดับ (ที่เรียกว่าปัญหา 3x + 1) เป็นที่ที่คุณเริ่มต้นด้วยจำนวนเต็มบวกใด ๆ สำหรับตัวอย่างนี้เราจะใช้ 10 และใช้ชุดของขั้นตอนไปนี้: if n is even: Divide it by 2 if n is odd: Multiply it by 3 and add 1 repeat until …

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
สร้างตัวเปรียบเทียบการนับบิตโดยใช้เกตส์ตรรกะ NAND
ตัวเปรียบเทียบการนับบิต (BCC) เป็นวงจรลอจิกที่รับอินพุตจำนวนนับA1, A2, A3, ..., Anรวมทั้งอินพุตที่B1, B2, B4, B8, ...เป็นตัวแทนของตัวเลข จากนั้นก็ให้ผลตอบแทน1ถ้าจำนวนรวมของAปัจจัยการผลิตที่อยู่บนมากกว่าจำนวนที่แสดงในไบนารีโดยBปัจจัยการผลิต (เช่นB1, B2และB8จะทำให้จำนวน11) และ0มิฉะนั้น ตัวอย่างเช่นสำหรับเปรียบเทียบบิตนับที่ใช้5ปัจจัยการผลิตซึ่งA2, A4, A5และB2มีการตั้งค่า1จะกลับ1เพราะมี 3 Aปัจจัยการผลิตที่มีอยู่ซึ่งมากกว่า2(หมายเลขที่แสดงโดยเฉพาะB2การที่) งานของคุณคือการสร้างตัวเปรียบเทียบการนับบิตที่รับทั้งหมด 16 Aอินพุตและ 4 Bอินพุต (แทนบิตจาก1ถึง8) โดยใช้ประตู NAND แบบอินพุตสองช่องเท่านั้นและใช้ประตู NAND น้อยที่สุดเท่าที่จะทำได้ เพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นคุณสามารถใช้ประตู AND, OR, NOT และ XOR ในแผนภาพของคุณด้วยคะแนนที่สอดคล้องกันดังต่อไปนี้: NOT: 1 AND: 2 OR: 3 XOR: 4 แต่ละคะแนนเหล่านี้สอดคล้องกับจำนวนประตู NAND …

3
บวกไบนารีคนตาบอด
ลองนึกภาพคุณมีสองกล่องB(x)และB(y)แต่ละกล่องมีบิตที่ไม่รู้จัก - 0 หรือ 1 และเครื่องFที่สามารถเอ็กซเรย์และสร้างกล่องที่สามสำหรับB(x^y)( xor ) FยังสามารถคำนวณB(x*y)( และ ) ในความเป็นจริงนั้นเป็นเพียงกรณีพิเศษของการดำเนินการเดียวที่เครื่องสามารถดำเนินการได้ - ผลิตภัณฑ์ภายในแต่ละตัวแสดงด้วยF()ด้านล่าง สำหรับสองอาร์เรย์ที่มีความยาวเท่ากัน [B(x[0]), B(x[1]), ..., B(x[n-1])] [B(y[0]), B(y[1]), ..., B(y[n-1])] ผลิตภัณฑ์ภายในถูกกำหนดให้เป็น B(x[0]*y[0] ^ x[1]*y[1] ^ ... ^ x[n-1]*y[n-1]) " แต่ละ " หมายถึงF()สามารถประมวลผลหลายคู่x[], y[]ในหนึ่งไป x[]และy[]จากหนึ่งคู่จะต้องมีความยาวเดียวกัน; x[]-s และy[]-s จากคู่ที่แตกต่างกันไม่จำเป็นต้อง กล่องถูกแสดงด้วยรหัสจำนวนเต็มที่ไม่ซ้ำกัน การใช้งานผลิตภัณฑ์ภายในแต่ละตัวใน JavaScript อาจดูเหมือน var H=[0,1]; // hidden values, indexed …

3
รหัสกอล์ฟ“ Atomic” - กำหนดจำนวนของนิวตรอนในไอโซโทป
งานของคุณคือการใช้สายที่มีไอโซโทปขององค์ประกอบเป็นอินพุตเข้ารหัสเหมือนตัวอย่างต่อไปนี้ด้วยหมายเลขอะตอมตามด้วยช่องว่างและสัญลักษณ์ทางเคมี IUPAC สำหรับองค์ประกอบ: 162 Dy และคืนจำนวนนิวตรอนในอะตอมของไอโซโทปนั้น ในตัวอย่างข้างต้น, ดิสโพรเซียม-162 มี 96 นิวตรอน (162 นิวคลีออรวม 66 ลบโปรตอนเพราะมันดิสโพรเซียม) 96ดังนั้นการส่งออกที่ควรจะเป็น คุณอาจสมมติว่าองค์ประกอบที่กำหนดจะเป็นหนึ่งใน 114 องค์ประกอบที่ได้รับชื่อถาวรในปัจจุบันโดย IUPAC (รวมถึง flerovium และ livermorium) และไม่ใช่ชื่อทั่วไปเช่นUus"ununseptium" คุณอาจสมมติว่าเลขอะตอมของไอโซโทปจะต้องไม่เกิน 1,000 หรือน้อยกว่าจำนวนโปรตอนในองค์ประกอบ คุณไม่สามารถใช้บิวด์อินเพื่อดึงข้อมูลเกี่ยวกับจำนวนโปรตอนหรือนิวตรอนขององค์ประกอบหรือใช้ฟังก์ชั่นใด ๆ ภายในโค้ดของคุณที่ประเมินโทเค็นสตริงหรือตัวเลขเป็นรหัสด้วยตัวเอง โปรแกรมที่ใช้โทเค็นน้อยที่สุดเพื่อทำสิ่งนี้ในภาษาใดก็ได้ที่ชนะ อย่างไรก็ตามสำหรับวัตถุประสงค์ของการท้าทายนี้ตัวละครทุกตัวในสตริงหรือชื่อตัวแปรที่ถูกแปลงเป็นสตริงจะนับเป็นโทเค็น รายการองค์ประกอบและหมายเลขอะตอมของพวกเขาสำหรับการอ้างอิง: แสดงตัวอย่างโค้ด { "H": 1, "He": 2, "Li": 3, "Be": 4, "B": 5, "C": 6, "N": 7, …

2
สร้างตัวแปลง EBCDIC โดยใช้ประตูตรรกะ NAND
ในคำถามนี้การทำแผนที่ถูกกำหนดระหว่าง EBCDIC และชุดของ ISO-8859-1 งานของคุณคือการสร้างเครือข่ายของประตู NAND แบบอินพุตสองช่องที่จะรับแปดอินพุตที่A1, A2, A4, ..., A128แสดงถึงตัวอักษร EBCDIC และส่งกลับเอาต์พุตแปดช่องที่แสดงถึงอักขระB1, B2, B4, ..., B128"ISO-8859-1" ที่สอดคล้องกันตามการแมปนั้น เพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นคุณสามารถใช้ประตู AND, OR, NOT และ XOR ในแผนภาพของคุณด้วยคะแนนที่สอดคล้องกันดังต่อไปนี้: NOT: 1 AND: 2 OR: 3 XOR: 4 แต่ละคะแนนเหล่านี้สอดคล้องกับจำนวนประตู NAND ที่ใช้ในการสร้างประตูที่สอดคล้องกัน วงจรลอจิกที่ใช้เกต NAND ที่น้อยที่สุดในการดำเนินการตามข้อกำหนดทั้งหมดข้างต้นชนะอย่างถูกต้อง
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.