Câu hỏi phỏng vấn về tìm kiếm nhị phân sai lầm của Steve Ballmer
- Steve Ballmer đã đưa ra các câu hỏi dạng đố vui cho ứng viên trong các buổi phỏng vấn tại Microsoft. Câu hỏi này dựa trên tìm kiếm nhị phân và kỳ vọng toán học.
- Ballmer đề xuất một trò chơi: “Tôi đang nghĩ đến một số từ 1 đến 100. Nếu đoán đúng, bạn nhận tiền; nếu đoán sai, bạn phải trả tiền.”
- Ballmer cho rằng không nên chấp nhận trò chơi này. Có hai lý do: thứ nhất là ông ấy có thể chọn con số khó nhất, và thứ hai là nếu chọn ngẫu nhiên thì kỳ vọng toán học là âm.
Chiến lược tìm kiếm nhị phân
- Nếu làm theo chiến lược tìm kiếm nhị phân, Ballmer sẽ phải trả $1 khi chọn một số cụ thể.
- Ví dụ, nếu Ballmer chọn 59 thì có thể tìm ra trong 5 bước bằng chiến lược tìm kiếm nhị phân. Emily Chang trên thực tế đã đoán gần đúng.
Tính kỳ vọng toán học
- Nếu Ballmer chọn số ngẫu nhiên, kỳ vọng toán học là $0.20.
- Có thể dùng ví dụ mã để tính số lần đoán cho từng giá trị và kỳ vọng tổng thể.
- Kỳ vọng được tính là 5 * 1/100 + 4 * 2/100 + 3 * 4/100 + 2 * 8/100 + 1 * 16/100 + 0 * 32/100 + -1 * 37/100.
Sai lầm của Ballmer
- Có thể Ballmer đã không tính đến trường hợp đoán $0 trong 6 lần.
- Nếu Ballmer nói “Tôi đang nghĩ đến một số từ 1 đến 100. Nếu đoán đúng, bạn nhận tiền; nếu đoán sai, bạn phải trả tiền.” thì kỳ vọng sẽ là -$0.49.
Bình luận
- Damian Cugley: Tò mò liệu có thuật toán đoán nào khác tốt hơn không.
- royalroad: Điều Ballmer mô tả là một trò chơi thông tin không hoàn hảo, và để tính kỳ vọng tối ưu thì cần tìm cân bằng Nash.
- espadrine: Có thể Ballmer đã ngụ ý rằng ông ấy có thể thay đổi số bí mật.
Tóm tắt của GN⁺
- Bài viết này đưa ra một ví dụ thú vị về thuật toán tìm kiếm nhị phân và cách tính kỳ vọng toán học.
- Đề xuất trò chơi của Ballmer cho thấy cách tính kỳ vọng thông qua phân tích toán học.
- Nội dung này có thể giúp hiểu và áp dụng thuật toán tìm kiếm nhị phân.
- Các dự án khác có chức năng tương tự gồm có "HackerRank" và "LeetCode".
1 bình luận
Ý kiến Hacker News
Kinh nghiệm phỏng vấn cho vai trò senior trong một lĩnh vực phức tạp (thanh toán)
Thảo luận về cách Ballmer chọn con số
Tính hữu ích của tìm kiếm nhị phân như một công cụ giải quyết vấn đề
Chia sẻ script Python
Sai lầm khi quy thành công cho trí thông minh của bản thân
Câu hỏi về việc đây có phải là một trò chơi công bằng hay không
Sự tò mò về nghiệm cân bằng Nash
Ballmer né tránh câu hỏi
Mục đích của câu hỏi phỏng vấn
Tìm lập trình viên nhưng lại tuyển một nhà toán học