ไม่ต้องคิดหรอกครับ เฉลยคำตอบซะก่อนดีกว่า ก็คือ 7427466391.com
มันเป็น Billboard ประกาศรับสมัคงานที่สกรีนคุณสมบัติผู้สมัครไปด้วยของ google
google ต้องการคนเก่งคณิตศาสตร์ ชอบแก้ปัญหายากๆ
นอกจากนี้ยังต้องมีนิสัยขี้สงสัยและมีความพยายามสูงอีกด้วย...
คือถ้าอ่านแล้วไม่ get หรือ get แต่ไม่สนใจ ก็..ไม่ต้องมาทำงานเป็นพวก
เค้าไม่ต้องมาลงหนังสือพิมพ์ว่า Google
ต้องการคนที่มีคุณสมบัติดังนี้....1..2..3..
แต่วิธีนี้มันได้ผลในทางกลับกันอย่างน่าทึ่งคือ
ดึงดูดคนที่มีคุณสมบัติที่ต้องการมาหาเราเอง แล้วค่อยชวนมาทำงาน...
อีกส่วนนึงคือ มันเป็นการสร้างภาพองค์กรณ์ที่ดีมากๆไปด้วยในตัวด้วย
หลังจากที่ Ad นี้เริ่มขี้น
ก็เริ่มมีการพูดคุยถึงการแก้โจทย์อันนี้ตามเวปบอร์ดด้านคณิตศาสต์/คอมพิวเตอร์ต่างๆอย่างรวดเร็ว
ดึงดูดความสนใจของกลุ่มเป้าหมายที่ไม่ได้อยู่ในย่านที่จะเห็น Ad นั้นได้อีก
แถมมีสื่อมาทำข่าวให้ด้วย
และยังทำให้ให้คนทั่วๆไปรู้สืกว่า คนที่ไปทำงานกับ Google
ได้ต้องเป็นคนฉลาดครับ
เพราะคนในกลุ่มหัวกะทิพวกนี้เริ่มเชื่อว่า สิ่งที่ Google กำลังจะทำต่อๆไป
เป็นสิ่งที่ท้าทายกว่า และอยู่ google จะได้ร่วมงานกัยคนเก่งๆมากกว่า..
ยิงนกนัดเดียว...ได้หลายตัวเลย
เอาละมาดูวิธีคิดคำตอบกันครับ..
บน billboard ไม่มีอะไรเลยนอกจากโจทย์ดังรูปที่ให้หาค่าตัวเลข Prime 10 ตัว
โดยหาจากลำดับของ e (2.71828 18284 59045 23536 02874
7135...ต่อไปเรื่อยๆไม่รู้จบ)
ถ้าคนที่อ่านโจทย์แล้วเข้าใจ
ก็ต้องมีความสงสัยมากพอที่จะพยายามเขียนโปรแกรมหาค่าตัวเลข 10 ตัวนี้มาให้ได้
แล้วก็จะได้ URL ออกมาเป็นคำตอบ..
จะได้เฉลยว่าคำตอบคือ “7427466391.com”
(แต่ตอนนี้เข้าไม่ได้แล้วเพราะเค้าปิดรับไปแล้วครับ)
คนที่เข้าไปหน้านั้นได้ในตอนนั้น ก็จะเจอข้อความแสดงความยินดีที่แก้ปัญหาได้
แต่ยังไม่บอกอะไร
และในหน้านั้นก็จะมีปัญหาข้อต่อไปให้แก้อีก จะเป็น password
ไปสู่เวปเพจหน้าถัดไป
เดี๋ยวก่อนเข้าปัญหาข้อต่อไป... มาดูวิธีคิดคำตอบก่อนครับ ว่าตรงกันไหม...
ค่า e ของคอมพิวเตอร์คือ number 2.7.... ให้ได้ Digit เยอะ ๆ
ก็ไม่ง่ายแล้วอ่ะครับ เพราะว่า taylor series ของมัน มี n! อยู่ข้างล่าง
ไปเรื่อยๆ ไม่รู้จบ
พอได้มันมาแล้ว ก็หา prime ใช้วิธีขี้โกงนิดหน่อย ก็คือ เอาพวกที่ไม่ใช่ 6n+-1
โยนทิ้ง ส่วนที่เหลือ ก็ O(sqrt(n)) อธิบายให้เข้าใจง่ายนิดนึง...หมายความว่า
เลข10^10 ก็ต้องหารเลขกัน 10^5 ครั้ง
เสร็จแล้วจะได้ค่าที่อยู่ในกรุ๊ปที่มีหน้าที่หาค่า Pi อย่างนี้่อยู่ก่อนแล้ว
แล้วนำไปเขียนง่ายที่สุดใน java เพราะว่า มันมี BigDouble อะไรแบบนี้อยู่
เก็บค่าทีละตัว หรือ เขียนใน C ก็มีให้ set size ของ float กับ int...เท่านี้
ก็ไม่ยากเท่าไหร่แล้ว
จะได้ค่าออกมาเท่ากับ 7427466391 บวกกับ .com ก็คือ 7427466391.com นำไปเช็ด
domain name ก็จะเป็นของ google เมื่อเข้าไปแล้วก็จะเป็นหน้ารับสมัครงาน...
แต่มีข้อความแสดงความยินดีเท่านั้นครับ
และในหน้านั้นก็จะมีปัญหาข้อต่อไปให้แก้อีก จะเป็น password
ไปสู่เวปเพจหน้าถัดไป
Domain Name: 7427466391.COM
Registrar: MARKMONITOR INC.
Whois Server: whois.markmonitor.com
Referral URL: http://www.markmonitor.com
Name Server: NS1.GOOGLE.COM
Name Server: NS2.GOOGLE.COM
Name Server: NS3.GOOGLE.COM
Name Server: NS4.GOOGLE.COM
Status: clientDeleteProhibited
Status: clientTransferProhibited
Status: clientUpdateProhibited
Updated Date: 25-mar-2011
Creation Date: 26-apr-2004
Expiration Date: 26-apr-2012