Bài 3: William Lin (tmwilliamlin168) – Nhà vô địch IOI 600/600 và hiện tượng YouTube của lập trình thi đấu

William Lin – nick tmwilliamlin168 – là nhà vô địch tuyệt đối IOI 2020 với điểm tuyệt đối 600/600, và là người đưa lập trình thi đấu đến với hàng trăm nghìn người qua YouTube. Đây là câu chuyện về "thiên tài YouTuber" của thế hệ Gen Z.

Bài thứ ba của chuyên mục Huyền thoại lập trình thi đấu. Nếu tourist là tượng đài, thì William Lin là người khiến nhiều bạn trẻ lần đầu biết đến lập trình thi đấu.
Vì sao William Lin đặc biệt?
William Lin không có bộ sưu tập danh hiệu dày đặc như tourist. Nhưng anh có hai điều hiếm ai có: một kỳ IOI hoàn hảo với 600/600 điểm, và một kênh YouTube biến những vòng thi khô khan thành nội dung hàng triệu người xem. Nhiều lập trình viên trẻ trên thế giới kể rằng họ bắt đầu học thuật toán sau khi xem video của anh.
| Thông tin | Chi tiết |
|---|---|
| Họ tên | William Lin |
| Nickname | tmwilliamlin168 |
| Năm sinh | Khoảng 2002 (báo Trung Quốc cho biết anh 18 tuổi vào tháng 10/2020) |
| Quốc tịch | Mỹ và Đài Loan; học trường quốc tế Mỹ tại Đài Bắc |
| Đại học | MIT (Viện Công nghệ Massachusetts), ngành Khoa học máy tính |
| Rating Codeforces cao nhất | 2931 – International Grandmaster |
| Công việc hiện nay | Theo trang cá nhân, anh làm về hiệu năng và hệ thống cho học máy (ML) |
Từ Scratch đến đội tuyển quốc gia
William bắt đầu lập trình với Scratch từ khoảng 12 tuổi, theo tờ QbitAI (Trung Quốc). Song song, anh cũng học tốt toán và từng đạt giải cao ở kỳ thi toán AMC. Anh học tại một trường quốc tế Mỹ ở Đài Bắc, và chính điều này dẫn tới một giai đoạn đầy sóng gió.
Tranh cãi khi chọn đội tuyển Đài Loan
Theo bài viết của chính anh trên Codeforces (khoảng 2017–2018), sau khi vượt qua kỳ thi quốc gia của Đài Loan, anh được dự trại huấn luyện nhưng bị cho biết không thể vào đội tuyển IOI, với lý do học sinh trường Mỹ không phù hợp mục tiêu thể hiện nền giáo dục Đài Loan. Những cập nhật sau đó của bài viết cho biết anh đứng đầu kỳ thi chọn đội nhưng vẫn không có tên. Cộng đồng Codeforces tranh luận sôi nổi về việc này có đúng quy chế IOI hay không.
Cuối cùng, nhờ có quốc tịch Mỹ, anh thi USACO và được chọn vào đội tuyển IOI của Mỹ năm 2019 và 2020. Cộng đồng đã đăng nhiều bài "William Lin orz" để chúc mừng.
Bảng thành tích
| Giải đấu | Năm | Thành tích |
|---|---|---|
| IOI 2019 (Baku, Azerbaijan) | 2019 | Huy chương Bạc, hạng 56/327, đội Mỹ cùng Benjamin Qi |
| USACO Platinum tháng 2 | 2020 | Điểm tuyệt đối 1000/1000 |
| USACO US Open Platinum | 2020 | Điểm tuyệt đối 1000/1000 |
| Google Kick Start – Round A | 2020 | Hạng nhất, giải xong cả đề trong khoảng 16–17 phút |
| IOI 2020 (thi trực tuyến, Singapore đăng cai) | 2020 | HCV, hạng 1/343 với 600/600 điểm |
| Codeforces | – | Rating cao nhất 2931 (International Grandmaster), giải hơn 1.800 bài |
| CodeChef | 2017–2021 | 7 sao, rating cao nhất 2916 |
IOI 2020: kỳ thi hoàn hảo
IOI 2020 do Singapore đăng cai và tổ chức trực tuyến vì đại dịch, với hai ngày thi 16 và 19/9/2020. William là thí sinh duy nhất đạt điểm tuyệt đối 600/600, giành ngôi vô địch tuyệt đối trong số 343 thí sinh. Theo QbitAI, lần gần nhất trước đó có người đạt điểm tuyệt đối ở IOI là năm 2015. Anh cũng là người duy nhất giải trọn bài "Mushrooms" năm đó.
Một chi tiết thú vị: khoảng một tháng trước kỳ thi, anh đã dự đoán trên video rằng mình sẽ giành huy chương vàng – và làm được còn hơn thế.
So với IOI 2019, khi anh chỉ giành huy chương bạc với 360,2/600 điểm, đây là một cú nhảy vọt chỉ trong một năm.
Hiện tượng YouTube của lập trình thi đấu
Kênh YouTube tmwilliamlin168 ra đời từ khoảng 2015 nhưng gần như "ngủ đông" tới cuối 2019. Khi anh bắt đầu luyện Codeforces nghiêm túc, anh đăng gần 100 video liên tiếp: giải đề trực tiếp, vừa code vừa giải thích, có cả camera quay mặt.
- Video nổi tiếng nhất: "Winning Google Kickstart Round A 2020 + Facecam" – quay lại toàn bộ vòng thi anh về nhất, giải xong đề trong khoảng 17 phút. Đến tháng 10/2020, video đã vượt 2,2 triệu lượt xem.
- Phỏng vấn thử với Google: tháng 5/2020, anh tham gia buổi "phỏng vấn coding Google với một học sinh cấp 3" cùng YouTuber Clément Mihailescu, rất được quan tâm.
- Lượng người theo dõi: khoảng 156 nghìn vào tháng 10/2020; theo một trang thống kê bên thứ ba, đến năm 2026 kênh có khoảng 415 nghìn người đăng ký và hơn 30 triệu lượt xem, dù đã ít đăng video mới.
- Code mở: code của các video nằm trong kho GitHub CP-YouTube, còn kho CompetitiveProgramming của anh có hơn 500 sao.
Anh còn lập một máy chủ Discord cho cộng đồng luyện thi, phỏng vấn và olympiad – với quy định không khuyến khích thần tượng hóa bản thân anh.
Lộ trình học lập trình thi đấu theo William Lin
Trong một video được nhiều trang tóm tắt lại, anh chia việc học thành năm giai đoạn:
- Chuẩn bị nền tảng: tiếng Anh (để đọc đề), toán và tốc độ gõ phím.
- Chọn C++ làm ngôn ngữ thi đấu.
- Học kiến thức cơ bản và các cấu trúc dữ liệu.
- Luyện tập liên tục: giải thật nhiều bài, rồi tham gia thật nhiều kỳ thi.
- Chia sẻ những gì mình học được với người khác.
Bản thân anh làm đúng như vậy: từ tháng 1 đến tháng 8/2020, gần như cuối tuần nào anh cũng luyện LeetCode, có hôm giải hơn 10 bài, và làm lại những bài sai cho đến khi đúng. Tốc độ gõ phím của anh cũng rất "khủng": kỷ lục 144 từ/phút trên TypeRacer.
Cộng đồng nói gì về William Lin?
- Nguồn cảm hứng: nhiều người viết blog kể rằng video Kick Start của anh là lý do họ bắt đầu học lập trình thi đấu.
- Bàn phím "ồn ào": một đồng đội đội tuyển Mỹ từng trêu trên Codeforces rằng bàn phím của William kêu cực to.
- Câu trả lời ngắn gọn nhất: khi có người hỏi làm sao "Lin" đạt 600 điểm IOI 2020, bình luận được ủng hộ nhiều nhất chỉ có một chữ: "ez".
- Nghịch lý lập trình thi đấu: một blog công nghệ ở Pháp lấy anh làm ví dụ cho sự khác biệt giữa tốc độ giải đề và công việc kỹ sư phần mềm thực tế – điều chính William cũng hay tự trêu.
William Lin bây giờ
Sau khi vào MIT (theo hồ sơ GitHub, khóa 2024), William gần như không còn thi đấu: trên Codeforces, anh không giải bài nào trong một năm qua, còn hoạt động trên CodeChef dừng từ khoảng 2021. Theo trang cá nhân williamlin.io, anh hiện làm về hiệu năng và hệ thống cho học máy. Kênh YouTube vẫn còn đó như một kho tư liệu quý cho người mới học.
Bài học cho người học thuật toán
- Bắt đầu từ đâu cũng được: William khởi đầu bằng Scratch. Điều quan trọng là bắt đầu.
- Tiến bộ có thể rất nhanh: từ HCB IOI 2019 lên vô địch tuyệt đối IOI 2020 chỉ trong một năm – nhờ luyện tập đều đặn và có kế hoạch.
- Học bằng cách dạy: giải thích lời giải trên video buộc anh phải hiểu thật sâu. Hãy thử viết lời giải cho bạn bè hoặc blog của mình.
- Đừng bỏ qua kỹ năng "phụ": tiếng Anh, toán và tốc độ gõ phím giúp bạn tiết kiệm rất nhiều thời gian trong phòng thi.
Bạn đã từng xem video nào của William Lin chưa? Chia sẻ video bạn thích nhất trong phần bình luận nhé!

Nguồn tham khảo
- IOI Statistics – William Lin
- Codeforces – hồ sơ tmwilliamlin168
- Codeforces – bài viết của William Lin về việc chọn đội tuyển Đài Loan
- QbitAI – bài viết về William Lin (10/2020)
- QbitAI – IOI 2020 (9/2020)
- USACO – kết quả Platinum tháng 2/2020
- USACO – kết quả US Open Platinum 2020
- NUS – IOI 2020
- CodeChef – hồ sơ tmwilliamlin
- Trang cá nhân williamlin.io
- Competitive Programming Hall of Fame – William Lin
- Không biết học gì trước, học gì sau, học lan man nên kiến thức bị hổng.
- Bí bài không ai gỡ, ngồi cả buổi vẫn không ra rồi bỏ cuộc.
- Code chạy được nhưng không đủ điểm, không biết sai ở đâu, chậm ở đâu.
- Không có đề thi thử và người chấm, nên không biết mình đang ở mức nào.
- Dễ nản giữa chừng khi không có ai theo sát.
- Lộ trình 111 buổi video sắp sẵn từ dòng code đầu tiên đến đề HSG thật của các tỉnh.
- Thầy trực tiếp gỡ bí, chữa bài cho từng em qua nhóm Zalo riêng.
- Hệ thống chấm bài tự động 24/7 và thi thử HSG hằng tuần để biết chính xác mình đang ở đâu.
- Đóng học phí một lần, thầy kèm lâu dài: từ thi chuyên Tin đến HSG quốc gia và cả khi lên đại học.
Nhận xét
Đăng nhận xét