คำถามติดแท็ก bitwise

สำหรับความท้าทายที่เกี่ยวข้องกับการทำบางสิ่งบางอย่างในระดับบิต

2
Bitor XOR ของจำนวนตรรกยะ
บทนำ จำนวนตรรกยะทุกจำนวนระหว่าง 0 ถึง 1 สามารถแสดงเป็นลำดับตามลำดับในที่สุดของบิต ตัวอย่างเช่นการแทนเลขฐานสองของ 11/40 คือ 0.010 0011 0011 0011 ... ที่0011เป็นส่วนหนึ่งซ้ำไปเรื่อย ๆ วิธีหนึ่งในการค้นหาการแสดงนี้คือต่อไปนี้ เริ่มต้นด้วยr = 11/40จากนั้นเพิ่มเป็นสองเท่าและใช้ส่วนที่เป็นเศษส่วนบันทึกเมื่อมันไปด้านบน 1 เมื่อค่าของrซ้ำคุณรู้ว่าคุณได้เข้าสู่ลูป 1. r = 11/40 2. 2*r = 11/20 < 1 -> next bit is 0, r = 11/20 3. 2*r = 11/10 >= 1 -> next bit is …

21
สร้างตาราง XOR
บทนำ แฮคเกอร์เป็นดิจิตอลลอจิกเกตที่ใช้ระบบเอกสิทธิ์หรือ ^ส่วนใหญ่เวลานี้จะแสดงให้เห็นว่า ผลลัพธ์ที่เป็นไปได้ทั้งสี่ในไบนารี: 0 ^ 0 = 0 0 ^ 1 = 1 1 ^ 0 = 1 1 ^ 1 = 0 สิ่งนี้สามารถเห็นได้ว่าเป็นการเพิ่มโมดูโล 2 ในไบนารี่ ในทศนิยมเราต้องแปลงทศนิยมให้เป็นไบนารี35 = 100011และ25 = 11001ในการคำนวณค่า XOR เราวางมันไว้บนสุดของกันและกัน: 100011 11001 ^ -------- 111010 = 58 in decimal ภารกิจ : เมื่อได้รับค่าจำนวนเต็ม N มากกว่า 1 ให้ส่งออกตาราง …

30
ค้นหาจำนวนศูนย์นำในจำนวนเต็ม 64 บิต
ปัญหา: ค้นหาจำนวนของศูนย์นำหน้าในจำนวนเต็มแบบ 64 บิต กฎ: อินพุตไม่สามารถถือเป็นสตริงได้ มันสามารถเป็นอะไรก็ได้ที่การดำเนินการทางคณิตศาสตร์และ bitwise เป็นตัวผลักดันอัลกอริธึม เอาต์พุตควรตรวจสอบความถูกต้องกับการแสดงตัวเลขจำนวนเต็มแบบ 64 บิตของหมายเลขโดยไม่คำนึงถึงภาษา ใช้กฎของรหัสกอล์ฟเริ่มต้น รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ กรณีทดสอบ: การทดสอบเหล่านี้ถือว่าเป็นจำนวนเต็มแบบเต็มของสองส่วน หากภาษา / การแก้ปัญหาของคุณขาดหรือใช้การแทนจำนวนเต็มที่ลงนามแตกต่างกันโปรดโทรออกและแจ้งกรณีทดสอบเพิ่มเติมที่อาจเกี่ยวข้อง ฉันได้รวมกรณีทดสอบบางข้อที่กล่าวถึงความแม่นยำสองเท่า แต่โปรดอย่าลังเลที่จะแนะนำรายการอื่น ๆ ที่ควรแสดง input output 64-bit binary representation of input (2's complement) -1 0 1111111111111111111111111111111111111111111111111111111111111111 -9223372036854775808 0 1000000000000000000000000000000000000000000000000000000000000000 9223372036854775807 1 0111111111111111111111111111111111111111111111111111111111111111 4611686018427387903 2 0011111111111111111111111111111111111111111111111111111111111111 1224979098644774911 3 0001000011111111111111111111111111111111111111111111111111111111 9007199254740992 10 0000000000100000000000000000000000000000000000000000000000000000 …

9
ทำตัวเลขที่ฉลาด
ปรีชาญาณเป็นภาษาที่ใช้ง่ายบิตฉันออกแบบในขณะที่กลับ มันเป็นไปตามรอบหลามของการดำเนินงานค่าที่เหมาะสม มีการดำเนินการหลายอย่างโดยส่วนใหญ่จะเหมือนหรือคล้ายกับสัญลักษณ์เทียบเท่าใน Python : ทำซ้ำส่วนบนสุดของสแต็ก ? หมุนด้านบนของสแต็กไปที่ด้านล่าง ! หมุนด้านล่างของสแต็คไปด้านบน [ ] วนรอบในขณะที่ด้านบนของสแต็กไม่เป็นศูนย์ ~ไม่ใช่ส่วนบนของสแต็ก ( -(n+1)) -ลบล้างด้านบนของสแต็ก ( -n) >bitshift ด้านบนของสแต็คหนึ่งครั้งไปทางขวา ( n//2) <bitshift ด้านบนของสแต็คหนึ่งครั้งไปทางซ้าย ( n*2) ^หรือสองรายการบนสุดของสแต็ก ( เหมือนกับ Python ) |หรือสองรายการบนสุดของสแต็ก ( เหมือนกับ Python ) &และสองรายการแรกสุดของสแต็ก ( เหมือนกับ Python ) การสร้างจำนวนเต็มใน Wise นั้นค่อนข้างง่ายคุณสามารถสร้างศูนย์ด้วย::^และเพิ่มขึ้นด้วย~-ดังนั้นคุณจึงทำศูนย์และเพิ่มมันหลายครั้ง อย่างไรก็ตามถ้าเราลบ-สิ่งต่าง ๆ ออกไปจะน่าสนใจขึ้นอีกนิด เรายังคงสามารถทำให้ทุกหมายเลขโดยใช้การดำเนินการที่เหลืออยู่ ตัวอย่างเช่นที่นี่ …

15
g o l f a t a n 2
บางครั้งจริงๆมันคือการต่อสู้การแปลงพิกัดคาร์ทีเซียนพิกัดขั้วโลก(x,y) (r,phi)ในขณะที่คุณสามารถคำนวณr = sqrt(x^2+y^2)ได้ง่ายมากคุณมักจะต้องแตกต่างจากกรณีเมื่อคำนวณมุมphiเพราะarcsin, arccosและarctanและฟังก์ชันตรีโกณมิติอื่น ๆ ทุกคนมีร่วมโดเมนที่เฉพาะในแต่ละช่วงครึ่งวงกลม ในหลายภาษามี built-in สำหรับการแปลงสี่เหลี่ยมพิกัดเชิงขั้วหรืออย่างน้อยก็มีatan2ฟังก์ชั่นที่ - รับ(x,y)- phiคำนวณมุม งาน งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นที่ใช้เวลาสอง (จุดลอยไม่ใช่ทั้งสองศูนย์) พิกัดคาร์ทีเซียน(x,y)และเอาท์พุทมุมขั้วโลกที่สอดคล้องกันphiที่phiจะต้องมีในองศาเรเดียนหรือเกรด (มีเกรดผมหมายถึงGradiansซึ่งเป็น 1 / 400 ของวงกลมเต็ม) แล้วแต่ว่าอะไรจะสะดวกสำหรับคุณ (1,0)มุมที่เป็นวัดในทิศทางบวกและเรามีมุมสำหรับศูนย์ รายละเอียด คุณไม่สามารถใช้สร้างเพิ่มเติมที่คำนวณมุมที่phiได้รับสองพิกัดรวมทั้งatan2, rect2polar, argOfComplexNumberและฟังก์ชั่นที่คล้ายกัน อย่างไรก็ตามคุณสามารถใช้ฟังก์ชั่นตรีโกณมิติปกติและการกลับด้านได้ซึ่งจะรับเพียงหนึ่งอาร์กิวเมนต์เท่านั้น สัญลักษณ์หน่วยใดก็ได้เป็นตัวเลือก รัศมีrจะต้องไม่เป็นลบและphiจะต้องอยู่ในช่วง[-360°, 360°](ไม่สำคัญว่าคุณจะส่งออก270°หรือ-90°) ตัวอย่าง Input Output (1,1) 45° (0,3) 90° (-1,1) 135° (-5,0) 180° (-2,-2) 225° (0,-1.5) 270° (4,-5) …
18 code-golf  math  geometry  trigonometry  code-golf  number-theory  fibonacci  code-golf  math  sequence  fibonacci  code-golf  string  code-golf  math  graphical-output  geometry  code-golf  string  code-golf  math  geometry  code-golf  math  bitwise  number  popularity-contest  graphical-output  image-processing  fractal  code-golf  number-theory  code-golf  date  multi-threading  code-golf  math  code-golf  math  number  sequence  code-golf  math  number  sequence  arithmetic  code-golf  decision-problem  logic-gates  code-golf  decision-problem  balanced-string  code-golf  math  arithmetic  combinatorics  code-golf  expression-building  code-golf  physics  code-golf  abstract-algebra  code-golf  number  arithmetic  integer  code-golf  ascii-art  number  code-golf  number-theory  primes  code-golf  arithmetic  grid  code-golf  code-golf  sequence  code-golf  kolmogorov-complexity  compression  code-golf  math  number  arithmetic  array-manipulation  code-golf  primes  hexagonal-grid  complex-numbers  code-golf  number  counting  code-golf  math  number  arithmetic 

23
สร้างบิตพาริตี
บิตพาริตีเป็นหนึ่งในรูปแบบที่ง่ายที่สุดของการตรวจสอบ ขั้นแรกคุณต้องเลือกพาริตี้แม้กระทั่งหรือคี่ สมมติว่าเราเลือกได้ ตอนนี้เราต้องการข้อความที่จะส่ง สมมติว่าข้อความของเราคือ "Foo" สิ่งนี้เขียนในรูปแบบไบนารี่เป็น: 01000110 01101111 01101111 ตอนนี้เรานับจำนวนทั้งหมดของ1ที่นั่นนั่นคือ 15 เนื่องจาก 15 เป็นเลขคี่เราจะต้องบวกหนึ่งบิตเพิ่มเข้าไปที่ส่วนท้ายของข้อความของเราและตอนนี้เราจะมีจำนวนบิต 'บน' . บิตที่เพิ่มล่าสุดนี้เรียกว่า "บิตพาริตี" หากเราเลือกพาริตี้คี่สำหรับเช็คซัมของเราเราจะต้องเพิ่มพิเศษ '0' เพื่อให้จำนวนบิตบนยังคงแปลก ความท้าทาย: คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่กำหนดบิตพาริตี้ที่ถูกต้องสำหรับสตริง โปรแกรมของคุณจะต้องมีสองอินพุต: sสตริง, นี่คือข้อความที่จะทำการคำนวณการตรวจสอบ สิ่งนี้จะถูก จำกัด ไว้ที่ 95 อักขระ ASCII ที่พิมพ์ได้ อักขระหรือสตริงอักขระเดี่ยวpที่จะเป็นแบบeพาริตีคู่หรือoสำหรับพาริตีคี่ และสร้างค่าความจริงที่เป็นเท็จซึ่งแสดงถึงบิตพาริตีที่ถูกต้อง Truthy ถ้าเป็น1และ falsey 0ถ้ามันเป็น ไม่อนุญาตให้ใช้บิวด์อินที่นับจำนวนบิต "บน" ในสตริงหรืออักขระ ตัวอย่างเช่นฟังก์ชั่นfที่ทำสิ่งนี้: f('a') == 3หรือf('foo') == 16ถูกแบน สิ่งอื่นใดเช่นการแปลงฐานเป็นเกมที่ยุติธรรม …

13
ดัชนีการเปลี่ยนแปลงของผกผัน
บทนำ พีชคณิตเรียงลำดับของรายการที่มีองค์ประกอบnสามารถกำหนดหมายเลขได้ตั้งแต่ 0 ถึงn ! - 1. ตัวอย่างเช่น 3! = 6 พีชคณิต(1,2,3)จะ(1,2,3), (1,3,2), (2,1,3), (2,3,1), ,(3,1,2)(3,2,1) เมื่อการเรียงสับเปลี่ยนถูกนำไปใช้กับรายการองค์ประกอบของมันจะเรียงลำดับตามลำดับเดียวกับตัวเลขในการเรียงลำดับ ยกตัวอย่างเช่นการใช้การเปลี่ยนลําดับ(2,3,1)การอัตราผลตอบแทนl = (a,b,c)(l[2],l[3],l[1]) = (b,c,a) อินเวอร์สของการเปลี่ยนแปลงนั้นหมายถึงการเรียงสับเปลี่ยนที่ย้อนกลับการดำเนินการนี้คือการใช้การเปลี่ยนแปลงและจากนั้นอินเวอร์สของมัน (หรือกลับกัน) ไม่ได้ปรับเปลี่ยนอาร์เรย์ ยกตัวอย่างเช่นค่าผกผันของการ(2,3,1)เป็น(3,1,2)ตั้งแต่การใช้ที่อัตราผลตอบแทน(b,c,a)(a,b,c) นอกจากนี้การเปลี่ยนแปลงผกผันของนำไปใช้กับการเปลี่ยนแปลงของตัวเองผลตอบแทนถัวเฉลี่ยเลข 1 ... n ยกตัวอย่างเช่นการใช้(3,1,2)เพื่อให้อัตราผลตอบแทน(2,3,1)(1,2,3) ตอนนี้เรากำหนดฟังก์ชั่นrevind ( x ) เป็นดัชนีของการเปลี่ยนแปลงผกผันของการเปลี่ยนแปลงที่มีดัชนีx (นี่คือA056019หากคุณสนใจ) เนื่องจากการเรียงสับเปลี่ยนกับดัชนีฉันเพียงแก้ไขรายการสุดท้ายkของรายการiff 0 ≤ i < k !,เราสามารถเพิ่มองค์ประกอบจำนวนใด ๆ ไปยังจุดเริ่มต้นของรายการโดยไม่มีผลต่อrevind ( i ) ดังนั้นความยาวของรายการจึงไม่มีผลต่อผลลัพธ์ …
17 code-golf  combinatorics  permutations  code-golf  image-processing  brainfuck  encode  steganography  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  ascii-art  fibonacci  code-golf  string  code-golf  sorting  popularity-contest  statistics  code-golf  ascii-art  kolmogorov-complexity  code-golf  code-golf  ascii-art  tic-tac-toe  code-golf  string  code-challenge  classification  test-battery  binary-matrix  code-golf  math  arithmetic  code-golf  ascii-art  random  code-golf  string  code-golf  number  binary  bitwise  code-golf  number  arithmetic  code-golf  math  ascii-art  code-golf  string  ascii-art  code-golf  string  ascii-art  code-golf  string  code-golf  counting  code-golf  number  binary  bitwise  decision-problem  code-golf  array-manipulation  code-golf  tips  brain-flak  code-challenge  quine  source-layout  code-generation  code-golf  linear-algebra  matrix  abstract-algebra  binary-matrix  code-golf  string  palindrome  code-golf  puzzle-solver  sudoku  code-golf  ascii-art  code-golf  graphical-output  internet  code-golf  ascii-art  kolmogorov-complexity  code-golf  math  code-golf  clock 

3
ค้นหารูปแบบในเงื่อนไข
ในความท้าทายนี้งานของคุณคือการหาวัสดุพิมพ์ที่มีโครงสร้างที่กำหนด อินพุต ข้อมูลของคุณจะเป็นสองสายที่เป็นตัวเลขไม่ว่างเปล่าเป็นรูปแบบ pและข้อความ tแนวคิดก็คืออักขระแต่ละตัวจะpแทนซับสตริงที่ไม่ว่างเปล่าที่ต่อเนื่องกันtซึ่งเกิดขึ้นถัดจากกันและกันและpแสดงถึงการต่อกันของมัน อักขระที่เหมือนกันสอดคล้องกับสตริงย่อยที่เหมือนกัน ตัวอย่างเช่นรูปแบบaaหมายถึงสแควร์ที่ไม่ว่างเปล่า (สตริงที่ได้จากการต่อสตริงที่สั้นกว่าเข้ากับตัวเอง) ดังนั้นรูปแบบaaสามารถจับคู่สตริงย่อยbyebyeได้ด้วยการaจับคู่แต่ละbyeครั้ง เอาท์พุต หากข้อความที่tมีสตริงย่อยที่pการแข่งขันแล้วส่งออกของคุณจะเป็นสตริงย่อยที่มีทวิภาคแทรกระหว่างสตริงที่ตรงกับตัวละคร: pตัวอย่างเช่นถ้าเรามีt = byebyenowและp = aaก็bye:byeเป็นผลลัพธ์ที่ยอมรับได้ อาจมีหลายตัวเลือกสำหรับสตริงย่อยที่ตรงกัน แต่คุณจะส่งออกหนึ่งในพวกเขาเท่านั้น ถ้าtไม่ได้มี substring :(จับคู่ของคุณออกจะเป็นหน้าเศร้า กฎและคำชี้แจง ตัวละครที่แตกต่างกันpสามารถสอดคล้องกับสตริงเหมือนกันเพื่อให้สามารถจับคู่สตริงp = aba AAAโปรดทราบว่าตัวละครจะต้องสอดคล้องกับสตริงที่ไม่ว่างเปล่า; โดยเฉพาะอย่างยิ่งถ้าpมีความยาวมากกว่าการส่งออกจะต้องมีt:( คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่นเต็มรูปแบบและคุณยังสามารถเปลี่ยนลำดับของอินพุตทั้งสองได้ จำนวนไบต์ต่ำสุดที่ชนะและไม่อนุญาตช่องโหว่มาตรฐาน กรณีทดสอบ pattern text -> outputได้รับในรูปแบบ โปรดทราบว่าอาจมีเอาต์พุตอื่นที่ยอมรับได้ a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

20
สลายจำนวน!
งานของคุณคือการแยกตัวเลขโดยใช้รูปแบบด้านล่าง นี้จะคล้ายกับการแปลงฐานยกเว้นที่แทนของรายชื่อdigitsในฐานคุณรายการvaluesเช่นว่ารายการเพิ่มขึ้นเพื่อป้อนข้อมูล หากฐานที่กำหนดคือnแต่ละหมายเลขในรายการจะต้องอยู่ในรูปแบบของk*(n**m)ที่ไหน0<=k<nและmไม่ซ้ำกันทั่วทั้งรายการ รายละเอียด รูปแบบอินพุต / เอาท์พุตที่สมเหตุสมผล โปรแกรม / ฟังก์ชั่นของคุณใช้ 2 อินพุทและเอาท์พุทรายการ รายการเอาท์พุทสามารถอยู่ในลำดับใด ๆ 0 สามารถยกเว้นหรือรวมไว้ได้ 0อนุญาตให้นำหน้า Built-in จะได้รับอนุญาต Testcases number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] เกณฑ์การให้คะแนน นี่คือรหัสกอล์ฟ ทางออกที่สั้นที่สุดในหน่วยไบต์ชนะ
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

5
ค้นหา XOR Primes
ในความท้าทายนี้เกิดจาก xnor เราถูกขอให้ใช้การคูณด้วย XOR ในการท้าทายนี้เป้าหมายคือการค้นหาnช่วงเวลา XOR แรก ช่วงเวลา XOR คล้ายกับช่วงเวลาปกติอย่างที่คุณเห็นตามคำจำกัดความต่อไปนี้: คำจำกัดความของจำนวนเฉพาะ: จำนวนบวกที่มากกว่า 1 ซึ่งไม่สามารถเกิดขึ้นได้จากการคูณสองจำนวนยกเว้นผ่านการคูณ 1 และตัวของมันเอง คำจำกัดความของ XOR Prime:จำนวนบวกมากกว่า 1 ซึ่งไม่สามารถเกิดขึ้นได้จากการคูณด้วย XOR ของตัวเลขสองตัวยกเว้นผ่านการคูณ XOR ที่ 1 และตัวของมันเอง โปรดทราบว่าแฮคเกอร์ช่วงเวลาที่เขียน OEIS ลำดับA014580 การคูณ XOR หมายถึงการคูณแบบยาวไบนารีโดยไม่ต้องดำเนินการ คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับแฮคเกอร์คูณในความท้าทายของ XNOR การป้อนข้อมูล: nจำนวนเต็ม เอาท์พุท: ครั้งแรกที่nแฮคเกอร์ นี่คือช่วงเวลา XOR ต่ำกว่า 500: 2 3 7 11 13 19 25 …

5
การดำเนินการบิตที่ไม่ฉลาด
ฉันชอบเล่นกอล์ฟdcแต่บางครั้งฉันก็รู้สึกท้อแท้เพราะdcไม่มีปฏิบัติการในระดับบิต ท้าทาย ให้สี่ฟังก์ชั่นการตั้งชื่อที่ใช้เทียบเท่าของการดำเนินงานคบิต&, |, ~และ^(บิต AND, OR, NOT และแฮคเกอร์) แต่ละฟังก์ชันจะใช้ตัวถูกดำเนินการสองตัว ( ~รับเพียงตัวเดียว) ซึ่งเป็นจำนวนเต็มอย่างน้อย 32 บิตที่ไม่ได้ลงชื่อ แต่ละฟังก์ชั่นจะคืนค่าจำนวนเต็มที่ไม่ได้ลงนามซึ่งมีความกว้างบิตเท่ากับตัวถูกดำเนินการ การ จำกัด คุณสามารถใช้การดำเนินการที่ได้รับการสนับสนุนdcเท่านั้น เหล่านี้คือ: + - * / การบวกการลบการคูณและการหารทางคณิตศาสตร์ ~ modulo (หรือ divmod หากภาษาของคุณรองรับ) ^ การยกกำลัง | การยกกำลังแบบแยกส่วน v รากที่สอง > >= == != <= < ผู้ประกอบการความเสมอภาค / ความไม่เท่าเทียมกันมาตรฐาน >> <<ผู้ประกอบการเปลี่ยนบิต dcไม่มีสิ่งเหล่านี้ แต่เนื่องจากมีการใช้งานเพียงเล็กน้อยในแง่ของการหาร / …

18
ถอดรหัสปริมาณที่มีความยาวผันแปรได้
ปริมาณความยาวตัวแปร (ยังเรียกว่าVLQหรือuintvar) คือวิธีการเข้ารหัสได้ถึงค่าจำนวนเต็ม 28 บิตโดยใช้เพียงเป็นไบต์มากที่สุดเท่าที่จำเป็น สิ่งนี้ถูกใช้ในรูปแบบไฟล์ MIDIเพื่อลดขนาดของข้อมูลเหตุการณ์บางอย่าง วิธีการทำงานค่อนข้างง่าย ในฐานะที่เป็นชุดใหญ่ของไบต์ไบต์บิตที่สำคัญที่สุด (MSB) ของแต่ละไบต์คือการ1บ่งชี้ว่า VLQ ไบต์อื่นดังต่อไปนี้ ส่วนที่เหลืออีก 7 บิตของแต่ละไบต์เป็นค่าที่ถอดรหัส ตัวอย่าง (จาก Wikipedia): [ 0x86, 0xc3, 0x17 ] => 106903 อ้างอิงเพิ่มเติม: วิกิพีเดีย , บางผู้ชาย ท้าทาย: รับปริมาณที่มีความยาวผันแปรได้แปลงเป็นค่าจำนวนเต็ม การป้อนข้อมูล: รายการของหนึ่งถึงสี่ไบต์หรือชนิดค่า 32- บิตแทน VLQ ที่ถูกต้องของจำนวนเต็ม เอาท์พุท: ค่าจำนวนเต็มของอินพุต VLQ กฎและเกณฑ์การให้คะแนน: นี่คือ code-golf ดังนั้นคำตอบที่สั้นที่สุดเป็นไบต์สำหรับแต่ละภาษาที่ชนะ กฎระเบียบมาตรฐานและเริ่มต้น I / O กฎใช้ …

17
XOR จัดเรียงอาร์เรย์
ให้คีย์และอาร์เรย์ของสตริงสับเปลี่ยนอาร์เรย์เพื่อให้เรียงลำดับเมื่อแต่ละองค์ประกอบมี XOR'd ด้วยคีย์ แฮคเกอร์สองสาย ในการ XOR สตริงโดยคีย์ XOR แต่ละค่าอักขระของสตริงโดยคู่ในคีย์โดยสมมติว่าคีย์ซ้ำตลอดไป ตัวอย่างเช่นabcde^123ดูเหมือนว่า: a b c d e 1 2 3 1 2 -------------------------------------------- 01100001 01100010 01100011 01100100 01100101 00110001 00110010 00110011 00110001 00110010 -------------------------------------------- 01010000 01010000 01010000 01010101 01010111 -------------------------------------------- P P P U W การเรียงลำดับ การเรียงลำดับควรทำตามคำย่อของสตริง XOR'd เสมอ นั่นคือ1 < A …

30
สร้างโปรแกรม Parrot
รับอินพุต, เอาต์พุตที่อินพุตตามด้วย newline ไม่รู้จบ ข้อมูลที่ป้อนจะเป็นสตริงที่ประกอบด้วยอักขระ ASCII ที่พิมพ์ได้ ( 0x20-0x7E) และบรรทัดใหม่ ( 0x0A) หากอินพุตมีความยาว 0 ให้ส่งบรรทัดใหม่อย่างไม่สิ้นสุด นี่คือโค้ดกอล์ฟที่มีจำนวนน้อยที่สุดในแต่ละภาษาที่ชนะ!
15 code-golf  string  sequence  combinatorics  fastest-code  number  code-challenge  restricted-source  rosetta-stone  code-golf  arithmetic  decision-problem  integer  factorial  code-golf  arithmetic  decision-problem  integer  bitwise  code-golf  kolmogorov-complexity  code-golf  tips  vim  code-golf  quine  code-generation  code-golf  string  restricted-source  code-golf  string  random  unicode  code-golf  audio  code-golf  ascii-art  code-golf  decision-problem  code-golf  puzzle-solver  code-golf  restricted-source  code-golf  kolmogorov-complexity  permutations  hexagonal-grid  code-golf  string  math  combinatorics  fastest-code  code-golf  restricted-source  code-golf  string  code-golf  arithmetic  code-golf  math  number  code-golf  string  decision-problem  balanced-string  code-golf  binary  code-golf  string  number  code-challenge  restricted-source  code-golf  ascii-art  printable-ascii  interactive  code-golf  string  ascii-art  code-challenge  restricted-source  source-layout  code-golf  arithmetic  tips  functional-programming  golfing-language  code-golf  binary  encryption 

4
XORyption ที่มีเล่ห์เหลี่ยม
เขียนโปรแกรมหรือฟังก์ชั่น (หรือชุดของโปรแกรม / ฟังก์ชั่น) เพื่อเข้ารหัสและถอดรหัสข้อมูลตามข้อกำหนดต่อไปนี้: การเข้ารหัสลับ คำนวณแฮช XOR ของอินพุตโดย XOR-ing ทุกไบต์พร้อม ๆ กัน แฮคเกอร์ทุกไบต์ของอินพุทโดยแฮชนี้ เลื่อนผลลัพธ์ไปทางซ้ายสี่บิต วางด้านซ้ายด้วยแฮชสี่บิตแรกของแฮช วางด้านขวาด้วยแฮช XOR สี่บิตสุดท้าย ตัวอย่าง อินพุตที่ได้รับ: "G0lf"( 0x47306C66) คำนวณแฮช XOR: 0x47 ^ 0x30 ^ 0x6C ^ 0x66 = 0x7D แฮคเกอร์ทุกไบต์โดยแฮ: 0x3A4D111B ผลลัพธ์ที่คาดหวัง (หลังเปลี่ยนและเบาะ): "s¤Ñ\x11½"( 0x73A4D111BD) กฎระเบียบ โปรแกรม / ฟังก์ชั่นของคุณสามารถอินพุต / เอาต์พุตชนิดใดก็ได้ที่เหมาะสมกับภาษากอล์ฟที่คุณเลือก(String, Byte Array, ฯลฯ )ตราบใดที่อินพุต …

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