นี้เป็นผลสืบเนื่องไปนี้ความท้าทายโดยAdnan ถ้าคุณชอบความท้าทายนี้คุณก็มีโอกาสที่จะชอบสิ่งนี้เช่นกัน ลองดูสิ!
การทดสอบหลายทางเลือกที่มี 8 คำถามแต่ละคนมี 4 BCADBADAตัวเลือกอาจมีคำตอบ: แปลงเป็นสี่อาร์เรย์ที่ต่างกันด้วยจริงและเท็จถ้าตัวอักษรปัจจุบันคือคำตอบมันจะมีลักษณะเช่นนี้
Q#: 1 2 3 4 5 6 7 8
B C A D B A D A
A: [0, 0, 1, 0, 0, 1, 0, 1]
B: [1, 0, 0, 0, 1, 0, 0, 0]
C: [0, 1, 0, 0, 0, 0, 0, 0]
D: [0, 0, 0, 1, 0, 0, 1, 0]
สิ่งนี้สามารถบีบอัดโดยใช้ตรรกะเล็กน้อย แต่ละทางเลือกA, B, CและDสามารถแสดงโดยสองค่าจริง / เท็จแสดงด้านล่าง:
A: 1 0
B: 0 1
C: 0 0
D: 1 1
การใช้ตรรกะนี้เราสามารถบีบเวกเตอร์สี่ตัวข้างบนเป็นสอง:
1 2 3 4 5 6 7 8
B C A D B A D A
[0, 0, 1, 1, 0, 1, 1, 1]
[1, 0, 0, 1, 1, 0, 1, 0]
00110111นั่นคือวิธีการทดสอบของคุณเป็นเพียง: 10011010, การต่อสิ่งเหล่านี้เข้าด้วยกันเราจะได้เลขฐานสอง
0011011110011010หรือเป็น14234ทศนิยม ใช้ค่าทศนิยมนี้เพื่อโกงการทดสอบของคุณ!
ท้าทาย
ใช้ตัวเลขNในช่วง (รวม) [0, 65535]และส่งออกสตริงพร้อมคำตอบสำหรับการทดสอบแบบปรนัย
กรณีทดสอบ:
14234
BCADBADA
38513
ABBDCAAB
0
CCCCCCCC
120
CBBBBCCC
65535
DDDDDDDD
39253
ABCDABCD
ผลลัพธ์อาจเป็นตัวอักษรตัวพิมพ์ใหญ่หรือเล็ก แต่คุณไม่สามารถใช้สัญลักษณ์อื่นได้
A=10, B=01แล้วC=nor(A,B)และD=and(A,B)แรงบันดาลใจจากความท้าทายของ Adnan ย้อนหลังก็อาจจะได้รับดีกว่าที่จะทำวิธีอื่น ๆ แต่ดี ... สายเกินไปในขณะนี้ ...
