ต้องยอมรับว่ากระแสของภาพยนตร์ไทยเรื่องฉลาดเกมส์โกงนั้นมาแรงแซงโค้งไม่แพ้หนังจากฝั่งฮอลีวู้ดเลยทีเดียวสำหรับนาทีนี้ จนทำให้มีคนไปชมภาพยนตร์เรื่องนี้กันมากมายทีเดียวหนึ่งในนั้นคือกลุ่มคนที่ประกอบอาชีพโปรแกรมเมอร์ โดยบล็อกของ ‘Earthchie Thanarat’ หนึ่งในโปรแกรมได้ให้ข้อวิพากษ์วิจารณ์ไว้ว่า “ถ้าลินหรือตัวเอกของเรื่องรู้จักบีบอัดข้อมูลหรือการใช้เลขฐาน ความท้าทายของตัวเรื่องในการต้องจำคำตอบจะไม่ใช่ปัญหาสำหรับลินเลย” นั้นจึงเป็นความไม่สมเหตุสมผลของตัวเรื่องหรือบทเนื่องจากการปูเรื่องมาให้ลินเป็นเด็กที่ฉลาดแต่กลับไม่คิดที่จะเอาระบบเลขฐานของคอมพิมเตอร์มาใช้ซึ่งไม่น่าเกินความสามารถของลิน
วิธีทำอย่างไร?
ด้วยความรู้ด้านเลขฐานง่ายๆ นี้เราสามารถบีบอัดให้ข้อมูลเล็กลง ได้เป็นจำนวนเท่ากับ log4 (เลขฐานปลายทาง) หรือในกรณีของฐาน 16 คือ log4(16) เท่ากับว่าข้อมูลจะเล็กลงราว 2 เท่า (อย่าพึ่งงงนะ)
ตัวอย่าง ถ้าโจทย์ 100 ข้อ จำคำตอบแบบฐาน 16 จะต้องจำไป 50 ตัวอักษร ถ้าแบบฐาน 32 จำไป 40 ตัวอักษร ถ้าแบบฐาน 64 จำไปเพียงแค่ 34 ตัวอักษร ยิ่งเลขฐานสูง ยิ่งจำน้อย แต่ก็บีบอัดลำบากมากขึ้นเช่นกันว่าเลขฐาน 16 นี่แหละดูเป็นไปได้ที่สุด เพราะแปลงในใจได้ทันที เหมาะกับการใช้ในห้องสอบที่มีเวลาจำกัดมากๆพอพูดเรื่องเลขฐาน 16 ผมว่าหลายๆ คนอ๋อแล้วล่ะว่าทำยังไง
ไอเดียคือ คำตอบ ABCD เนี่ย ความจริงคือเลขฐาน 4 ชัดๆ เราก็แค่แปลงคำตอบที่อยู่ในฐาน 4 ให้กลายเป็นฐาน 16 เพื่อให้ข้อมูลสั้นลงคนที่เคยแปลงเลขฐานจะรู้ดีว่าถ้าแปลงไปกลับระหว่างเลขฐานที่เป็น factor ของกันและกัน จะแปลงง่ายมาก การแปลงฐาน 4 ไปเป็นฐาน 16 จึงแทบจะทำได้ในใจเลยทีเดียวเพราะ 16 หาร 4 ลงตัวคำตอบปรนัยตอบได้ 4 แบบ A B C D เราสามารถแปลงเป็นตัวเลขกันได้ในหัวอย่างง่ายดาย
A = 0 B = 1 C = 2 D = 3
สาเหตุที่ต้องเป็น 0,1,2,3 ก็เพราะว่านี่คือเลขฐาน 4 นั่นเอง เพราะคุณเจอเลขฐานที่เป็นเลขฐาน 10 มาตลอดชีวิต ตอนนี้อาจต้องจูนปรับความคิดกันนิดนึงนะครับ
สมมุติว่า
เฉลยคำตอบของ 10 ข้อแรกคือ
A B C D D C D A B D
สามารถแทนค่าด้วยเลขได้ดังนี้ 0 1 2 3 3 2 3 0 1 3
ให้จับคู่มัดมันไว้เป็นคู่ๆ ครับ
01 23 32 30 13
ต่อไปมาแปลงเป็นฐาน 16 กัน วิธีนั้นง่ายมาก จำตารางนี้ เข้าห้องสอบไปแล้วก็วาดลงกระดาษทดเลยนะ (ก็ไม่มีไรมากเรียงสับเปลี่ยน 0,1,2,3 ลงไปในเลข 2 หลัก ได้ออกมา 16 รูปแบบ จำไม่ยากหรอก)
ตารางเลขฐาน 4 ไปฐาน 16
00 = 0 01 = 1 02 = 2 03 = 3 10 = 4 11 = 5 12 = 6 13 = 7 20 = 8 21 = 9 22 = a 23 = b 30 = c 31 = d 32 = e 33 = f
จากนั้นแปลงคำตอบที่เรามีเป็นฐาน 16 โดยการเทียบเลขทีละคู่ไปเลย
สรุปว่า 01 23 32 30 13 จึงได้ออกมาเป็น 1 b e c 7
สรุปคือสิ่งที่ลินต้องจำคำตอบออกมาจากห้องสอบ 10 ข้อแรกมีเพียง ‘1bec7’ และนั้นเพียงพอที่ลินจะสามารถจำคำตอบได้ทั้งหมดเพราะลินพูดเองว่าลินสามารถจำข้อสอบออกมาได้ครึ่งเดียว ซึ่งกระบวนการทั้งหมดอาจฟังดูยากไปนิดแต่เชื่อเถอะว่า เอาจริงมันไม่ได้ยากขนาดนั้นและสามารถทำได้จริง และที่สำคัญคุ้มกว่าการเสี่ยงต้องหาแนวร่วมมาเสี่ยงอีก
ขอขอบคุณข้อมูลดีดีไม่ให้เราโง่จาก medium.com ‘Earthchie Thanarat’