Hoa Ban Không TànC.29 / 38
Chương 29

Lần thất bại đầu tiên

Đến nơi thi, tôi mới hiểu thiếu ngủ không chỉ làm mắt cay: nó khiến những dòng chữ quen trên đề cũng như trôi chậm đi trước mặt mình.

Thị xã Sơn La đón tôi bằng một buổi sớm nhờ nhờ mây đục và cái rét ngọt của vùng thung lũng đá vôi, thứ rét buốt luồn qua từng thớ vải thô ráp trên manh áo cũ như hàng trăm mũi kim châm cùng lúc vào da thịt. Suốt chặng xe đò hơn bốn tiếng đồng hồ từ Mộc Châu ra, tôi gần như không chợp mắt được lấy một phút. Chiếc xe khách liên tỉnh đời cũ xộc xệch, mỗi lần qua khúc cua dốc đá quanh đèo Chiềng Đông lại chồm lên rồi vặn mình cót két, mùi dầu diesel cháy khét lẹt quyện chặt lấy mùi mồ hôi người, mùi nôn nao của những hành khách say xe bám riết lấy cánh mũi khiến cổ họng tôi luôn chực trào lên từng cơn nghẹn ứ. Suốt cả chặng đường dài ấy, tay tôi chưa từng rời khỏi quai chiếc túi bạt bộ đội sờn rách đeo chéo qua ngực. Bên trong đáy túi, sâu dưới mớ giấy nháp gập tư và hai cây bút bi, tôi ghì chặt bọc tiền nhăn nhúm mà bác dâu Sương đã giúi vội vào tay tôi sau nách bếp rạng sáng hôm qua—những tờ tiền lẻ nhàu nhĩ được bọc kỹ trong chiếc khăn tay thêu hoa mai đã ngả màu ố vàng, đặt cạnh chiếc máy tính Casio fx-500MS trầy xước mà thằng Tùng vừa ném trả lại cho tôi trong đêm.

Tổng cộng trong bọc ấy có đúng hai trăm mười nghìn đồng. Đó không phải là một món tiền đơn thuần để chi tiêu dọc đường; đó là một sinh mệnh, một món nợ bằng máu thịt được gom góp từ nửa chiếc khuyên tai bạc—kỷ vật cuối cùng từ ngày cưới mà bác dâu tôi phải cắn răng mang ra tiệm vàng đầu huyện đánh đổi—và từ những ngày hai bác cháu nhịn đói cuốc đất đến toác cả gan bàn chân trên những sườn dốc đá Pha Luông bỏng rát. Vì thế, khi chiếc xe đò gầm gừ nhả một làn khói đen kịt rồi thả tôi xuống bên rìa bến xe thị xã lúc trời còn mù sương, đứng trơ trọi trước dãy quán phở nghi ngút khói bên vỉa hè đang bốc lên ngào ngạt mùi nước dùng ninh xương béo ngậy, mùi quế hồi và hành hoa thái nhỏ thơm lừng, bụng tôi réo lên từng hồi cồn cào đến thắt ruột, nhưng tôi chỉ biết cúi gằm mặt bước thật nhanh qua. Tôi không dám cho phép mình dừng lại, càng không dám nghĩ đến việc bỏ ra dù chỉ năm nghìn đồng cho một bát bún nóng hay một khúc bánh mì kẹp thịt đầy đặn. Tôi lầm lũi đi bộ nép vào con ngõ nhỏ ẩm ướt dẫn sang cổng trường chuyên thị xã—nơi đặt điểm thi học sinh giỏi năm nay. Tìm thấy một vòi nước công cộng nằm khuất bên hông khu nhà tập thể giáo viên đã tróc lở từng mảng vôi gà, tôi ghé miệng uống ừng ực hai ngụm nước lạnh ngắt buốt tận chân răng, rồi ngồi bệt xuống bậc thềm, móc từ đáy túi ra mẩu cơm nắm độn sắn nguội ngắt còn sót lại từ trưa hôm qua, bọc trong lớp lá chuối khô đã héo quắt. Tôi bẻ từng mẩu cơm nhai trệu trạo cùng chút muối vừng vụn sót lại dưới đáy túi nilon. Miếng cơm khô khốc cọ ráp vào cuống họng rát buốt, nuốt đến đâu nghẹn ứ đến đấy, nhưng tôi vẫn nghiến răng ép mình phải nuốt trọn từng hạt, cố thuyết phục bản thân rằng chừng này tinh bột là đã đủ năng lượng để giữ cho đầu óc tỉnh táo suốt ba tiếng đồng hồ căng thẳng trước màn hình máy tính.

Khoảng hơn bảy giờ, khi cô Hạnh và thầy Dũng tìm thấy tôi ở khoảng sân trường rợp bóng cây sau chặng đường dài hai thầy cô tự đèo nhau bằng xe máy từ huyện ra, tôi đang ngồi thu lu trên một góc bục xi măng dưới gốc xà cừ cổ thụ, hai bàn tay thô ráp liên tục xoa mạnh lên má để xua đi lớp da xám xịt vì đói lả và gió rét.

"Nam! Đến lâu chưa em?" Cô Hạnh bước vội lại, tà áo khoác gió màu mận chín còn bám đầy bụi đường trường đỏ quạch. Đôi mắt sắc sảo mà ấm áp của cô quét thật nhanh từ đỉnh đầu rối bù của tôi xuống đến đôi dép nhựa Tiền Phong đã mòn vẹt đế, để lộ ngón chân cái thâm tím vì lạnh. "Sao ngồi co ro ở đây thế này? Đã ăn sáng gì chưa? Trông mặt mũi hốc hác, tái mét thế kia hả con?"

Một thoáng hoảng hốt lướt nhanh qua lồng ngực tôi. Tôi lập tức đứng bật dậy, luống cuống chỉnh lại quai túi bạt, cố ưỡn ngực ra để giấu đi đôi vai đang hơi run rẩy vì những cơn gió buốt luồn qua nách áo. Tôi sợ nhất ánh mắt ấy của cô—ánh mắt của một người mẹ, một người cô có thể bóc trần toàn bộ sự bần hàn, thiếu thốn cùng cực mà tôi luôn dùng sự lầm lì để che đậy bấy lâu nay. Tôi sợ cô và thầy Dũng nhìn thấy tôi rệu rã, tiều tụy, rồi sẽ nảy sinh cảm giác thương hại, hoặc tệ hơn nữa là thầy cô sẽ nghĩ rằng một đứa học trò kiệt quệ đến mức này thì làm sao gánh vác nổi kỳ vọng của cả một trường huyện miền núi, làm sao xứng đáng với khoản tiền học bổng và tiền lệ phí thi mà hai thầy cô đã đứng ra bảo lãnh, phụ đạo ròng rã suốt mấy tháng trời.

"Dạ, em... em ăn no từ lúc vừa xuống bến xe rồi ạ," tôi vội vã nói dối, giọng cố ghìm cho thật tròn trịa, dứt khoát dù đáy lưỡi đắng ngắt. "Bến xe nhiều quán xá lắm, em mua hai cái bánh bao to tướng ở ngay ngã ba thị xã. Giờ bụng em no căng rồi cô, em thấy khỏe khoắn lắm rồi ạ."

Thầy Dũng dựng chiếc xe Minsk bám đầy bùn đất nổ lạch bạch vào cạnh bờ rào dâm bụt, tháo đôi găng tay len xù lông đã thủng đầu ngón, sải bước tiến lại gần rồi vỗ thật mạnh một cái lên bả vai tôi. Cái vỗ tay đầy sức nặng của người đàn ông vùng cao khiến sống lưng tôi hơi chùng xuống một nhịp, nhưng tôi cắn chặt hàm răng sau lớp môi nứt nẻ để giữ cho thân mình không bị lảo đảo.

"Tốt! Tinh thần người lính ra trận là phải như thế!" Thầy Dũng cười hào sảng, tiếng cười vang rộn xua tan bớt cái ảm đạm của buổi sớm sương mù. Thầy thọc tay vào túi áo khoác dù bộ đội bạc màu, rút ra chiếc thẻ dự thi ép nhựa bóng loáng đưa cho tôi. "Phòng máy ở trường chuyên này điều kiện tốt lắm. Toàn bộ là dàn máy đồng bộ dùng chip Pentium IV thế hệ mới, màn hình CRT Samsung phẳng lì sáng choang, bàn phím gõ êm và nảy tanh tách chứ không bị kẹt lẫy cao su hay liệt mất mấy phím mũi tên như mấy cỗ máy đồ cổ ở phòng thực hành trường mình đâu. Vào phòng thi thì cứ tuyệt đối bình tĩnh mà làm. Nhớ thật kỹ lời tôi dặn suốt mấy tuần qua: nhận đề thì phải đọc lướt qua một lượt toàn bộ các câu, phân bổ thời gian cho từng phần, tuyệt đối không được nóng vội gõ mã khi cấu trúc dữ liệu và thuật toán chưa thông suốt trên giấy nháp. Mày có tư duy nền rất bén, cứ bình tâm làm đúng những gì thầy trò mình đã trui rèn là không việc gì phải ngợp trước tụi trường chuyên tỉnh cả. Nghe rõ chưa?"

"Dạ, em nhớ kỹ từng lời thầy dặn rồi ạ," tôi gật đầu thật mạnh, bàn tay giấu sâu trong túi quần siết chặt lấy chiếc thẻ dự thi mát lạnh.

Tôi biết mình bước vào phòng thi này không chỉ với tư cách của một thí sinh đi tìm kiếm giải thưởng danh dự cho nhà trường. Ẩn sâu dưới lồng ngực gầy guộc của tôi là cả một khối nặng trĩu những âm thanh và hình ảnh của quá khứ: tiếng ho khan xé phổi của người cha đoản mệnh từng ôm ngực trăn trối bên ngọn đèn dầu, tiếng gắt gỏng cay nghiệt đầy nước mắt của bác dâu Sương mỗi lần mở nắp cót thóc đã vơi nửa để vét từng bơ gạo nuôi tôi ăn học, những buổi trưa mùa đông cởi trần vác từng tảng đá hộc dựng rào nương ở Pha Luông buốt đến tận tủy xương, và cả ánh mắt khinh bỉ cùng câu nói gầm gừ cộc lốc của thằng Tùng khi ném trả chiếc máy tính vào đống rơm đêm trước: *Mày có máy rồi thì cút đi mà thi, đừng để người ta bảo nhà này nuôi báo cô một thằng ăn hại.* Chuyến đi này, đối với tôi, là một trận đánh sinh tử. Nó là chiếc phao cứu sinh duy nhất để tôi chứng minh rằng sự cưu mang của gia đình bác Lương không phải là một sự uổng phí ngậm đắng nuốt cay, rằng niềm tin và công sức của cô Hạnh, thầy Dũng không bị đặt nhầm vào một kẻ vô dụng, và quan trọng nhất: tôi phải chứng minh cho cuộc đời này thấy rằng một đứa trẻ mồ côi ăn nhờ ở đậu hoàn toàn có thể tự vạch ra lối thoát cho số phận mình bằng con chữ và những dòng mã lệnh, chứ không nhất thiết phải suốt đời cúi đầu làm nô lệ cho một bữa cơm độn sắn.

***

Tám giờ kém mười lăm, ba hồi trống trường giòn giã và đanh gọn vang lên từ phía sảnh chính, xé toạc màn sương mù ẩm ướt đang bao phủ khắp các dãy phòng học, báo hiệu giờ tập trung vào phòng thi.

Phòng thi máy số hai nằm ở tầng hai của dãy nhà chữ U kiên cố sơn màu vàng chanh. Ngay khi bước chân qua cánh cửa gỗ lim nặng nề, một luồng không khí đặc quánh lập tức ập vào mặt tôi: mùi nhựa mới của những thùng máy tính đồng bộ, mùi bụi vi mạch ấm nóng phả ra từ các khe tản nhiệt đang chạy ro ro, át hẳn cái lạnh buốt thấu xương ngoài hành lang. Ba mươi bộ máy tính được bố trí ngay ngắn thành bốn dãy bàn phủ fooc-mi-ca màu ghi sáng bóng. Xung quanh tôi, những thí sinh đến từ trường chuyên của thị xã tỉnh lỵ và các đội tuyển mạnh của những huyện đồng bằng đều khoác trên mình những bộ đồng phục mùa đông dày dặn, ấm áp; chân đi giày thể thao trắng tinh tươm, trên bàn đặt sẵn những hộp bút bi nước nhập ngoại đắt tiền và những chiếc máy tính bỏ túi Casio đời mới bóng loáng, mặt kính không một vết xước.

Tôi bước về vị trí máy số mười bốn ở góc giữa phòng theo đúng số báo danh dán trên góc bàn. Đặt chiếc máy tính Casio fx-500MS cũ kỹ đã mòn vẹt bốn góc cạnh cùng hai cây bút bi Thiên Long giá một nghìn đồng lên mặt bàn nhẵn thín, tôi bỗng thấy đôi bàn tay mình gầy gò, xám ngoét và thô ráp một cách trơ trọi giữa không gian hiện đại này. Những ngón tay chai sần vì cầm cán cuốc, bửa củi và vác đá trên nương ngô bỗng nhiên run rẩy nhẹ. Một cảm giác tự ti vô hình thoáng bóp nghẹt lồng ngực tôi trong tích tắc. Nhưng rồi, tôi khẽ hít sâu một hơi dài, ép chặt hai lòng bàn tay áp sát xuống mặt bàn lạnh ngắt, cố định tâm lại theo đúng năm nguyên tắc vàng mà thầy Dũng từng bắt tôi chép phạt mười lần vào cuốn sổ tay sau sự cố tôi lỡ tay định dạng nhầm ổ cứng máy tính của cô Hạnh hồi đầu năm học: *Bình tĩnh quan sát. Kiểm tra hiện trạng. Hiểu rõ từng thao tác trước khi bắt đầu. Không vội vã. Không tự mãn.*

Hai giám thị mở niêm phong túi đựng đề thi. Tờ giấy thi khổ A4 còn nồng nặc mùi mực in roneo ẩm ướt được đặt úp cẩn thận xuống trước mặt từng thí sinh. Khi tiếng chuông báo giờ làm bài vang lên kèm theo hiệu lệnh lật đề của giám thị trưởng, tôi lật nhanh tờ giấy, đôi mắt căng ra lướt qua ba bài toán lớn của buổi thi kéo dài trọn vẹn một trăm tám mươi phút. Đề thi gồm ba câu với thang điểm phân bổ rõ ràng: Câu 1 (chiếm 6 điểm) là bài toán xử lý chuỗi ký tự và đếm tần số xuất hiện thỏa mãn điều kiện chia hết; Câu 2 (chiếm 6 điểm) là bài toán hình học kết hợp quy hoạch mảng hai chiều để tìm diện tích phủ lớn nhất của tập hợp các hình chữ nhật lồng nhau; Câu 3 (chiếm 8 điểm)—bài toán mang tính then chốt dùng để phân loại huy chương—là một bài toán tối ưu hóa đường đi trên đồ thị có trọng số gắn liền với các điều kiện ràng buộc ngặt nghèo về chi phí năng lượng.

Ngay khoảnh khắc nhìn thấy cấu trúc của Câu 1, một luồng sinh khí quen thuộc lập tức dội ngược từ lồng ngực lên các dây thần kinh não bộ của tôi. Toàn bộ sự căng thẳng, run rẩy và mặc cảm ban nãy dường như tan biến sạch trơn. Thế giới xung quanh tôi thu hẹp lại vừa vặn trong khuôn khổ của tờ đề thi và chiếc màn hình vi tính. Những chuỗi ký tự, những biến số nguyên, mảng một chiều và các vòng lặp cấu trúc trong ngôn ngữ Turbo Pascal bắt đầu nhảy múa trong tâm trí tôi với một trật tự tuyệt đối rõ ràng và kỷ luật. Tôi vươn tay bấm nút nguồn trên thùng máy, mở môi trường lập trình Free Pascal. Màn hình xanh thẫm quen thuộc bừng sáng với con trỏ nhấp nháy màu vàng kiên nhẫn.

Không vội vàng lao vào gõ mã nguồn như một vài thí sinh ở dãy bàn bên cạnh đang điên cuồng đập bàn phím cành cạch, tôi kéo tờ giấy nháp trắng tinh lại gần, dùng ngòi bút bi vạch ra cấu trúc dữ liệu cho Câu 1. Bài toán yêu cầu đọc dữ liệu đầu vào từ tệp văn bản có tên `CHUOI.INP`, xử lý các chuỗi ký tự hỗn hợp và ghi kết quả đã lọc ra tệp `CHUOI.OUT`. Đây là dạng bài tập cơ bản mà tôi đã từng làm đi làm lại hàng chục lần trên cỗ máy cà tàng chạy hệ điều hành MS-DOS ở phòng thiết bị của trường huyện. Tôi phác thảo nhanh hàm kiểm tra tính hợp lệ của ký tự, thiết lập mảng đếm tần số đánh dấu từ ký tự `'A'` đến `'Z'`, đồng thời chủ động cài đặt các bẫy điều kiện để kiểm soát chặt chẽ những trường hợp chuỗi rỗng hoặc chuỗi chứa toàn khoảng trắng thừa.

Đầu óc thông suốt, ngón tay tôi lướt trên bàn phím nảy tanh tách, dứt khoát và nhịp nhàng.

```pascal assign(f, 'CHUOI.INP'); reset(f); assign(g, 'CHUOI.OUT'); rewrite(g); ```

Tôi cẩn thận gõ từng dòng lệnh, chèn dấu chấm phẩy chuẩn xác, không quên thụt đầu dòng ba khoảng trắng ở mỗi khối lệnh con để dễ dàng kiểm soát luồng logic của chương trình. Khi bấm `Ctrl + F9` để chạy thử bộ dữ liệu mẫu đầu tiên ghi trong đề bài, màn hình đen chớp lên một phần mười giây rồi tệp kết quả hiện ra hai con số hoàn toàn trùng khớp với ví dụ mẫu. Nhưng tôi không hề dừng lại ở đó. Nhớ lời răn dạy kỹ lưỡng của thầy Dũng: *"Một người thợ lập trình cẩn trọng không bao giờ được phép tin vào vẻ bề ngoài trơn tru của một bộ dữ liệu mẫu quá đỗi hiền lành"*, tôi tự tay mở tệp văn bản đầu vào, tạo thêm ba bộ dữ liệu biên khắc nghiệt: một chuỗi chỉ toàn chữ số, một chuỗi đạt độ dài cực đại 255 ký tự với các khoảng trắng nằm rải rác ở đầu và cuối chuỗi, và một chuỗi chỉ vỏn vẹn đúng một ký tự duy nhất. Chương trình nuốt trọn toàn bộ các trường hợp thử thách mà không hề vấp phải bất kỳ lỗi thực thi nào, thời gian chạy hiển thị trên hệ thống chưa đầy 0.01 giây.

Sang đến Câu 2, bài toán mảng hai chiều đòi hỏi việc vận dụng thuật toán quy hoạch động kết hợp với kỹ thuật duyệt hình học cơ bản. Tối hôm trước ngày thi, khi tôi bị bác dâu Sương mắng té tát bên mâm cơm độn ngô và không dám xin hai mươi nghìn tiền ăn để mua cuốn tài liệu photo về "Quy hoạch động nâng cao" do các giáo viên trường chuyên biên soạn mà thầy Dũng giới thiệu, tôi đã từng ôm cuốn sổ rách ngồi khóc thầm sau chuồng trâu. Nhưng bù lại, những kiến thức nền tảng về bảng phương án, trạng thái biên và hệ thức truy hồi mà thầy Dũng kiên nhẫn giảng giải chay bằng phấn trắng trên nền bảng đen tróc lở của trường huyện trong những buổi chiều muộn mùa đông đã bám rễ vô cùng sâu sắc vào tư duy toán học của tôi. Tôi dùng bút chì kẻ nhanh một ma trận trạng thái lên giấy nháp, thiết lập công thức truy hồi một cách mạch lạc: giá trị tối ưu tại ô $(i, j)$ sẽ được tính toán trực tiếp từ kết quả tối ưu của ba ô lân cận liền kề đã được xác định từ bước trước đó.

Bàn phím cơ của dàn máy thị xã gõ êm ru, từng dòng mã Pascal tuôn chảy dưới các đầu ngón tay chai sạn của tôi như dòng nước mát lành từ mó nước Nà Ban đổ xuống mương máng mùa xuân: thông suốt, trong trẻo và không gặp phải bất kỳ một sự cản trở nào. Tôi hoàn tất đoạn mã dài gần một trăm dòng, bấm tổ hợp phím `Alt + F9` để dịch thử. Hộp thoại màu xanh lá cây lập tức hiện ra giữa màn hình: *Compile successful: Press any key.*

Một cảm giác phấn chấn ngập tràn lồng ngực khiến hai tai tôi nóng bừng lên. Tôi ngước mắt nhìn lên chiếc đồng hồ tròn kim loại treo trên tường phía trên bục giảng: kim dài mới chỉ vừa nhích qua số mười lăm của giờ thứ hai. Tức là chỉ mới trôi qua bảy mươi lăm phút làm bài. Hai bài toán đầu tiên—nắm giữ trọn vẹn sáu mươi phần trăm tổng số điểm toàn bài—đã được tôi giải quyết xong xuôi, gọn gàng và chuẩn xác đến từng dấu chấm phẩy, không để lại bất kỳ một kẽ hở nào cho các trường hợp dữ liệu biên.

Trong một khoảnh khắc ngắn ngủi và hiếm hoi ấy, tôi khẽ ngả lưng ra chiếc ghế tựa bọc nỉ êm ái của phòng máy, nhìn những khối mã nguồn màu xanh biếc xếp hàng ngay ngắn trên màn hình CRT, lòng tôi trào dâng một niềm kiêu hãnh mãnh liệt. Tôi cảm thấy chiếc huy chương vàng hay giải Nhất cấp tỉnh chưa bao giờ ở gần tầm tay mình đến thế. Tôi hình dung ra cảnh tượng mình trở về trường huyện trong tiếng reo hò của bạn bè, nhìn thấy ánh mắt tự hào của cô Hạnh, nụ cười rạng rỡ của thầy Dũng; tôi sẽ được tuyển thẳng vào lớp chọn của trường cấp ba huyện mà không ai có quyền đe dọa đuổi học tôi vì nợ tiền phụ phí xây dựng; tôi sẽ mang trọn vẹn hai trăm mười nghìn đồng nguyên vẹn về đặt lại vào tay bác dâu Sương để bác chuộc lại nửa chiếc khuyên tai bạc, và ngẩng cao đầu bước qua mặt thằng Tùng để chứng minh rằng thằng Nam mồ côi này không phải là một món nợ vô tích sự đè nặng lên đôi vai của dòng họ.

Thế nhưng, sự ngạo nghễ của tinh thần chưa bao giờ đủ sức đánh lừa một cơ thể sinh học đã bị vắt kiệt đến giọt sức lực cuối cùng.

***

Khi tôi bắt đầu chuyển sang đọc đề Câu 3, thảm họa mới thực sự bắt đầu âm thầm hé lộ.

Đó là một bài toán hóc hiểm mang tính phân loại đỉnh cao: đề bài cho một mạng lưới giao thông gồm $N$ nút giao và $M$ tuyến đường nối giữa các nút, mỗi tuyến đường có độ dài $L$ và phải chịu một mức phí trạm kiểm soát là $C$. Yêu cầu đặt ra cho thí sinh là phải lập trình tìm ra đường đi ngắn nhất từ nút xuất phát $S$ đến nút đích $E$ sao cho tổng chi phí trạm kiểm soát trên toàn tuyến không được vượt quá một ngưỡng ngân sách $B$ cho trước; đồng thời, nếu tồn tại nhiều đường đi có cùng độ dài tối ưu thỏa mãn ngân sách, chương trình bắt buộc phải lựa chọn và in ra đường đi đi qua ít nút giao trung chuyển nhất.

Tôi đọc đề bài lần thứ nhất. Những con chữ in bằng mực tím roneo bắt đầu có dấu hiệu nhòe nhoẹt, chao đảo nhẹ trên trang giấy trắng.

Bụng tôi lúc này đột ngột quặn thắt lại trong một cơn đói dữ dội và cồn cào. Mẩu cơm nắm độn sắn nguội ngắt với chút muối vừng vụn mà tôi nuốt vội ở bậc thềm ban sáng đã bị dạ dày tiêu hóa sạch bách từ lúc nào. Cái dạ dày rỗng không, bị kích thích bởi sự căng thẳng kéo dài, bắt đầu co bóp dữ dội, tiết ra từng đợt dịch vị chua loét dâng ngược lên tận cuống họng làm tôi buồn nôn nao ruột gà. Cổ họng tôi khô khốc, rát buốt như bị cọ xát bằng giấy ráp; suốt từ sáng sớm, vì sợ tốn tiền mua chai nước lọc năm nghìn đồng bên ngoài bến xe, tôi không có lấy một giọt nước mang theo, còn hai ngụm nước máy công cộng lạnh ngắt nuốt vội đã bốc hơi hoàn toàn qua những đợt thở dốc.

Một cơn đau đầu âm ỉ bỗng nhiên xuất hiện từ phía sau ót, rồi như một mũi khoan bằng sắt nung từ từ xoáy sâu, găm chặt vào vùng thái dương bên phải của tôi. Đó là cái giá phải trả của một chuỗi ngày dài đằng đẵng bị bào mòn thể lực: những đêm mùa đông thức trắng chong đèn dầu học bù sau khi phải đi bộ mười cây số đường rừng từ bãi ngô Pha Luông về nhà, những buổi trưa nhịn đói để dành từng đồng bạc lẻ thuê máy tính ở quán net huyện gõ mã, và đặc biệt là đêm hôm qua—đêm mà tôi đã thức trọn năm tiếng đồng hồ trong gian kho chứa củi ẩm mốc của nhà bà giáo Ngô, run rẩy trong nỗi sợ hãi tột cùng rằng chiếc máy tính mượn của trường sẽ bị ai đó lấy cắp mất.

Tôi chớp mắt liên tục, cố dùng các đầu ngón tay day mạnh vào hai bên huyệt thái dương để xua đi lớp sương mù nhờ nhờ đang giăng kín trước võng mạc, rồi run rẩy cầm cây bút bi lên để bắt đầu nháp thuật toán.

Chính trong trạng thái u mê, chếnh choáng vì tụt đường huyết và thiếu oxy lên não ấy, mắt tôi lướt qua bảng mô tả tham số kỹ thuật ở phần giữa trang đề thi. Ràng buộc in bằng chữ nghiêng ghi rất rõ ràng: *"Mỗi con đường nối giữa hai nút là đường đi một chiều (directed edge), và chi phí trạm kiểm soát $C$ có thể nhận giá trị bằng 0."* Nhưng bộ não đang kiệt quệ, căng cứng của tôi lại tự động chắp vá các mảnh ký ức bài giảng cũ rồi đọc lướt thành: *"Mạng lưới đường đi hai chiều liên thông..."* Tệ hại hơn nữa, đôi mắt mờ đục của tôi đã bỏ sót hoàn toàn điều kiện phụ cực kỳ quan trọng nằm ở dòng cuối cùng của trang in: *Nếu có nhiều đường đi cùng độ dài tối ưu, ưu tiên đường có số nút đi qua ít nhất.*

Tin rằng

Tin rằng đây chỉ là biến thể mở rộng của thuật toán Dijkstra kết hợp quy hoạch trạng thái trên đồ thị vô hướng, tôi lao vào viết mã. Bàn tay tôi bắt đầu lạnh ngắt, các đầu ngón tay tê buốt như vừa vùi sâu vào một vốc băng tuyết trên đỉnh đèo. Tiếng gõ phím không còn nảy giòn giã, dứt khoát như hồi đầu giờ mà trở nên nặng nề, dính phím, lẹt xẹt rụt rè dưới mặt nhựa đã ngả màu vàng ố của chiếc bàn phím Mitsumi cũ kỹ. Tôi cắm cúi dựng một cấu trúc dữ liệu đồ thị phức tạp với danh sách kề hai chiều, phân bổ hàng loạt mảng tĩnh lồng ghép và kỳ công xây dựng một hàng đợi ưu tiên bằng cấu trúc Heap tự tạo—thứ kỹ thuật cao cấp đầy kiêu hãnh mà thầy Dũng vừa dày công truyền thụ cho tôi trong căn phòng thực hành ẩm mốc ở trường huyện vào tuần trước.

Màn hình Pascal xanh biếc ngập tràn những dòng lệnh dài dặc, trôi tuột xuống phía dưới theo từng cú gõ cách thô bạo. Càng viết, tôi càng nghe rõ tiếng máu chảy rần rật bên màng nhĩ, hòa cùng tiếng nuốt khan từng ngụm nước bọt đắng ngắt nơi cuống họng khô cháy. Đáy lưng tôi đau buốt từng cơn, như thể có một mũi dùi nhọn hoắt nung đỏ găm thẳng vào cột sống rồi ngoáy mạnh theo từng nhịp cúi người. Mồ hôi lạnh bắt đầu túa ra rịn ướt trán, lăn chầm chậm qua khóe mắt xót buốt, làm bết dính những sợi tóc mai lòa xòa trước trán vào da thịt nhớp nháp. Tôi tự nhủ rằng mình đang đi đúng hướng, rằng cấu trúc mảng ba chiều kết hợp Heap nhị phân này sẽ nghiền nát mọi bộ dữ liệu kiểm thử mà ban giám khảo thị xã có thể bày ra.

Bốn mươi phút đằng đẵng trôi qua trong cơn mê man của những phép gán và vòng lặp.

Lưng áo chàm của tôi đã đẫm mồ hôi, dính chặt vào da thịt lạnh ngắt. Tôi thở hắt ra một hơi dài run rẩy, đưa ngón trỏ gầy guộc nhấn tổ hợp phím `Ctrl + F9` để dịch và chạy thử bộ dữ liệu mẫu in trong đề bài.

Màn hình đen của chế độ thực thi hiện ra vỏn vẹn chừng một giây rồi phụt tắt ngấm, trả lại giao diện soạn thảo màu xanh thẳm quen thuộc. Tôi vội vàng mở tệp kết quả `DUONGDI.OUT` bằng lệnh điều hướng quen thuộc. Nhưng đập vào mắt tôi không phải là con số 45 tròn trĩnh và chuẩn xác như ví dụ minh họa của đề thi.

Nằm chỏng chơ trên góc trên cùng bên trái của màn hình là một con số âm kỳ quặc, vô nghĩa, kèm theo một dòng thông báo lỗi màu đỏ rực chém ngang thanh trạng thái phía dưới: `Runtime error 201 at 0002:1A3C`. Lỗi tràn chỉ số mảng.

Tim tôi thót lại một cái, cảm giác như cả lồng ngực vừa hụt xuống một hố sâu thăm thẳm không đáy.

"Sao lại tràn mảng? Mảng mình khai báo dư cơ mà..." tôi lẩm bẩm trong miệng, giọng nói khản đặc, nghẹn lại ở thanh quản như có một nắm cát khô chẹn ngang.

Hai bàn tay run rẩy đưa lên bấm phím mũi tên cuộn ngược mã nguồn. Tôi giở lại tờ giấy đề thi đã nhàu nát vì mồ hôi tay, ghé sát mắt xuống mặt giấy sần sùi, đối chiếu từng dòng tham số kỹ thuật với từng dòng khai báo biến. Và rồi, khi đôi mắt cay xè, mờ đục của tôi dừng lại ở dòng chữ in nghiêng thứ tư của phần mô tả bài toán, cả người tôi chết lặng. Một luồng điện buốt giá chạy dọc từ đỉnh đầu xuống tận gót chân, đánh sập toàn bộ hệ thống tri giác trong khoảnh khắc.

*Mỗi con đường nối giữa hai nút là đường đi một chiều.*

Đường một chiều. Không phải đồ thị vô hướng. Đồ thị có hướng, và chi phí qua trạm có thể nhận giá trị bằng 0, đồng nghĩa với việc tồn tại những chu trình có tổng trọng số không đổi hoặc đồ thị con có hướng tạo thành các vòng lặp bẫy trạng thái. Toàn bộ thuật toán tôi vừa dày công cặm cụi dựng nên suốt gần một tiếng đồng hồ qua—toàn bộ cấu trúc Heap hai chiều, mảng kề đối xứng và bảng phương án quy hoạch động tôi vừa còng lưng gõ gần hai trăm dòng lệnh—hoàn toàn trở thành đống rác rưởi vô giá trị. Nó sai ngay từ cái móng nền tảng nhất của tư duy tiếp cận bài toán.

Tôi bàng hoàng ngước nhìn lên chiếc đồng hồ treo tường tròn vành vạnh phía trên bảng đen của phòng thi. Chiếc kim dài sơn đỏ đang nhích dần từng nấc khô khốc về phía số mười.

Thời gian làm bài chỉ còn vỏn vẹn hai mươi lăm phút.

Một cơn hoảng loạn tột cùng ập đến như cơn lũ rừng quét qua khe núi, bóp nghẹt lồng ngực khiến tôi không thở nổi. Không gian trong phòng thi bỗng chốc trở nên ngột ngạt đến phát điên. Tiếng quạt tản nhiệt của ba mươi cỗ máy tính đồng bộ đặt rải rác khắp phòng thi dường như cùng lúc gầm rú lên inh tai nhức óc, rền vang như tiếng cối xay đá nghiến ngấu trong đêm. Tiếng lách cách gõ phím liên hồi của những thí sinh trường chuyên xung quanh dội thẳng vào màng nhĩ tôi như những nhát búa nện sắt, nhắc nhở rằng bọn họ đang băng băng về đích, đang gặt hái từng điểm số trọn vẹn, trong khi tôi đang đứng trơ trọi giữa đống gạch vụn do chính mình vừa xây nhầm.

Tôi nghe thấy tiếng thở dốc nặng nhọc của chính mình, lồng ngực phập phồng nghẹn ứ sau lớp áo vải chàm ẩm ướt.

"Bình tĩnh... mày phải bình tĩnh lại, Nam..." tôi cắn chặt răng, tự lẩm bẩm thành tiếng qua hai hàm răng đang va vào nhau lập cập. Tôi cắn mạnh vào môi dưới, cắn đến mức bật máu để mượn cơn đau buốt xé thịt xua đi đám mây mù đang che lấp lý trí. Vị tanh nồng, mằn mặn của máu tươi ứa ra, thấm đẫm đầu lưỡi. Nhưng cơ thể khốn khổ này dường như đã vượt quá ngưỡng chịu đựng của nó. Cơn tụt đường huyết sau một đêm thức trắng và nửa ngày nhịn đói biến hai bàn tay tôi thành hai nhánh cây khô run bần bật, các khớp ngón tay co rút cứng đờ, không thể kiểm soát chuẩn xác từng chuyển động. Mắt tôi hoa lên, từng chùm đốm sáng trắng li ti như đom đóm chập chờn nhảy múa trên nền thủy tinh lồi của chiếc màn hình CRT.

Hai mươi lăm phút. Để xóa sạch một công trình gần hai trăm dòng lệnh sai lầm và viết lại một thuật toán hoàn toàn mới từ con số không.

***

Trong lằn ranh mỏng manh giữa sự tuyệt vọng hoàn toàn và bản năng sinh tồn trần trụi, ngọn lửa tự tôn và tố chất thuật toán bẩm sinh từng giúp tôi sống sót qua những tháng ngày tăm tối nhất bỗng nhiên bùng lên dữ dội. Tôi không được phép buông tay. Tôi không thể vứt bỏ tất cả ở đây.

Tôi ấn giữ tổ hợp phím bôi đen toàn bộ đoạn xử lý thuật toán cũ, rồi giáng mạnh ngón tay xuống phím `Delete`. Từng khối lệnh biến mất trong chớp mắt. Màn hình IDE màu xanh thẳm trở lại khoảng trống trơ trọi, chỉ còn trơ lại phần nhập xuất dữ liệu từ tệp văn bản.

Không còn thời gian để mơ mộng về một cấu trúc Heap hoàn chỉnh hay cây tìm kiếm nhị phân cân bằng nữa. Viết Heap bằng tay trong trạng thái tay run và đầu óc mụ mẫm lúc này chắc chắn sẽ dẫn đến lỗi logic ở hàm sàng xuôi hoặc sàng ngược. Tôi buộc phải hạ cấp độ phức tạp, chấp nhận sử dụng giải thuật Bellman-Ford cải tiến với hàng đợi mảng vòng tròn hoặc thuật toán Dijkstra rút gọn dùng mảng tĩnh đánh dấu để tiết kiệm tối đa thời gian gõ phím. Bằng một sự tập trung tột độ đến mức nghẹt thở, tôi ép từng nơ-ron thần kinh đang rệu rã trong hộp sọ phải hoạt động hết công suất, liên tục nhẩm tính lại các bước chuyển trạng thái trên bảng phương án: gọi `D[u, c]` là độ dài đường đi ngắn nhất xuất phát từ đỉnh nguồn đến đỉnh `u` sao cho tổng chi phí trạm kiểm soát tích lũy đúng bằng `c`.

Bàn tay tôi run lẩy bẩy, các đầu ngón tay liên tục trượt trên phím bấm nhưng vẫn điên cuồng gõ xuống những dòng mã mới. Trong một động tác quờ tay vội vã, cây bút bi trên mặt bàn bị gạt trúng, lăn lông lốc rồi rơi cạch xuống sàn gạch hoa. Tôi không dám cúi xuống nhặt. Mười giây cúi xuống tìm bút dưới gầm bàn có thể cướp đi ba dòng lệnh gán trạng thái. Mồ hôi từ cằm nhỏ tong tòng xuống mặt bàn gỗ ép, loang lổ từng vệt sẫm màu.

`for i := 1 to n do` ` for j := 0 to b do` ` d[i, j] := maxint;`

Tôi gõ nhanh đến mức các ngón tay va đập vào nhau loạn xạ, phát ra những âm thanh khô khốc. Mười lăm phút. Đồng hồ treo tường tiếp tục bước đi không một chút thương xót. Mười phút. Rồi năm phút cuối cùng. Người giám thị nam có gương mặt nghiêm nghị bắt đầu đứng dậy, bước đi rầm rập dọc theo các dãy bàn, cất giọng nhắc nhở bằng thứ âm lượng lạnh lùng: "Tất cả các thí sinh kiểm tra lại cấu trúc thư mục, tên tệp mã nguồn và tệp dữ liệu vào ra. Chuẩn bị lưu bài."

Tôi hoàn thành thuật toán mới khi chiếc kim dài của đồng hồ chỉ còn cách vạch kết thúc đúng ba phút ngắn ngủi. Bằng trực giác nghề nghiệp của một kẻ đã nếm trải hàng nghìn giờ nháp trên nền đất nương, tôi biết thuật toán này đã đi đúng hướng. Nó tiếp cận rất gần với bản chất tối ưu của bài toán đồ thị nhiều chiều, hoàn toàn đủ sức bẻ gãy ít nhất bảy mươi đến tám mươi phần trăm các bộ dữ liệu kiểm thử quy mô lớn nếu được vận hành trơn tru.

Tôi nhấn `Ctrl + F9`. Trình biên dịch chạy vèo một đường, không báo lỗi cú pháp. Tôi lập tức mở tệp đầu vào, nạp thử bộ dữ liệu mẫu gồm năm đỉnh của đề thi rồi cho thực thi: màn hình nhấp nháy, con số 45 hiện ra tròn trĩnh trên tệp kết quả đầu ra!

Một luồng dưỡng khí như vừa được bơm thốc vào lồng ngực nghẹt thở của tôi. Một tia hy vọng mong manh lóe lên trong đôi mắt cay xè. Nhưng chính trong khoảnh khắc cận kề sự sống sót ấy, bộ não đang bị vắt kiệt đường huyết và thiếu oxy trầm trọng của tôi đã không còn đủ tỉnh táo để thực hiện bước quan trọng nhất mà thầy Dũng luôn khắc sâu vào đầu tôi trong mỗi buổi luyện đội tuyển: *Kiểm tra điều kiện biên và rà soát lỗi cú pháp cuối cùng.*

Tôi đã hoàn toàn quên mất ràng buộc phụ in nghiêng: *chi phí $C$ có thể nhận giá trị bằng 0*.

Trong vòng lặp khởi tạo và cập nhật trạng thái chi phí, do viết trong cơn hoảng loạn và thói quen vô thức từ các bài toán đồ thị thông thường, tôi đã khai báo vòng lặp chi phí chạy từ 1 thay vì chạy từ 0: `for c := 1 to b do...` Điều đó đồng nghĩa với việc toàn bộ các cạnh có trọng số chi phí bằng không sẽ bị bỏ qua, không bao giờ được đưa vào bước nới lỏng khoảng cách. Tệ hại hơn nữa, ở khối lệnh so sánh số lượng nút trung chuyển khi hai phương án có cùng độ dài tối ưu, ngón tay run rẩy của tôi đã gõ nhầm dấu `>=` thành dấu `>`, khiến chương trình vĩnh viễn không cập nhật lại đỉnh cha khi gặp một hành trình có cùng độ dài nhưng đi qua ít trạm kiểm soát hơn.

Một lỗi lầm chỉ vỏn vẹn hai ký tự. Hai ký tự nhỏ nhoi, vô hình nằm lọt thỏm giữa hàng trăm dòng lệnh Pascal dày đặc.

Nếu tôi có một cơ thể khỏe mạnh bình thường, nếu tôi được ngủ đủ một giấc năm tiếng trọn vẹn đêm qua thay vì ngồi co ro sợ hãi trong kho củi ẩm mốc, nếu buổi sáng nay bụng tôi có một bát phở nóng hay một củ khoai luộc lót dạ để máu lưu thông đều đặn lên vỏ não, tôi chỉ cần mất đúng ba mươi giây liếc mắt là có thể tóm gọn ngay cái lỗ hổng chết người ấy. Nhưng lúc này, trước mắt tôi chỉ là một màn sương mờ đục xám xịt. Tôi nhìn trừng trừng vào màn hình xanh, nhìn lướt qua hai ký tự chí mạng đó mà đầu óc hoàn toàn tê liệt, không hề nhận ra sự sai lệch hiển nhiên đang hiện hữu.

"Hết giờ làm bài! Tất cả thí sinh dừng tay, rời ngón tay khỏi bàn phím!"

Tiếng hô đanh thép của giám thị vang lên như một nhát búa tạ giáng thẳng xuống đỉnh đầu tôi, dập tắt mọi ảo vọng cuối cùng.

Một giám thị tiến lại phía bàn tôi, rút chiếc đĩa mềm màu đen nhãn xanh từ trong túi áo ra, cắm mạnh vào ổ đĩa của thùng máy tính. Tiếng ổ đĩa rít lên ken két khi thực hiện lệnh sao chép thư mục bài làm `NGUYENVANNAM_TIN` vào đĩa lưu trữ, rồi người đó chìa tờ biên bản nộp bài cùng cây bút bi trước mặt tôi, yêu cầu ký nhận.

Bàn tay tôi cầm lấy cây bút bi của giám thị mà các ngón tay run rẩy đến mức không tài nào ghì chặt được thân nhựa. Nét chữ ký của tôi nguệch ngoạc, méo mó và run rẩy như nét vẽ của một đứa trẻ tật nguyền trên nền giấy trắng tinh. Tôi nhìn dòng chữ ghi tên mình, nhìn con số ba bài thi đã nộp đầy đủ, nhưng sâu thẳm dưới đáy lồng ngực đang thắt lại, một linh cảm lạnh buốt rợn gáy mách bảo cho tôi biết: tôi đã tự tay đánh mất tấm vé thông hành của đời mình.

***

Tôi bước ra khỏi phòng thi như một kẻ mộng du vừa trải qua một cơn ác mộng dài bị rút cạn linh hồn.

Ánh nắng trưa gay gắt của thị xã vùng cao hắt thẳng xuống nền sân trường đổ bê tông trắng xóa, dội ngược vào mắt tôi những vệt sáng chói chang, bỏng rát. Cơn gió lạnh buốt cuối đông từ phía hẻm núi thốc ngược lên, tạt thẳng vào mặt, nhưng toàn thân tôi thì ướt sũng mồ hôi lạnh, chiếc áo chàm bạc phếch dính chặt vào da thịt nơi sống lưng, buốt nhức đến tận tủy xương. Xung quanh tôi, tiếng bước chân rậm rịch và tiếng bàn tán râm ran, hồ hởi của các thí sinh trường chuyên thị xã vang lên như những đợt sóng triều dội thẳng vào hai bên thái dương:

"Câu ba thuật toán đồ thị dễ ợt, tao bắt đúng cái trường hợp chi phí bằng không, chạy mượt mà qua hết mười test mẫu của máy chấm!"

"Bài ba chỉ cần cẩn thận cái điều kiện số nút trung chuyển là coi như ăn trọn bốn điểm trần rồi, tao viết Dijkstra mảng thường còn kịp nộp trước mười phút..."

Từng câu, từng chữ của họ rơi vào tai tôi như những lưỡi dao lam cứa từng nhát ngọt xớt vào da thịt. Đau đớn và cay đắng tột cùng. Tôi không thể mở miệng tự an ủi rằng đề thi quá khó hay đánh đố. Đề thi hoàn toàn công bằng, rành mạch và mẫu mực; nó mở toang cánh cửa cho bất kỳ ai có tư duy logic sắc bén và một nền tảng kỹ thuật vững vàng. Tôi cũng không thể đổ lỗi cho chiếc máy tính mượn của thầy Dũng hay chiếc máy tính để bàn của hội đồng thi thị xã; máy chạy rất êm, bàn phím nhạy và không hề gặp bất kỳ trục trặc phần cứng nào.

Thất bại cay đắng này—sự sụp đổ thảm hại ở những giây phút quyết định nhất—hoàn toàn là do giới hạn thể lực kiệt quệ của chính cơ thể tôi.

Cái nghèo không cướp đi trí thông minh của tôi, nhưng nó đã âm thầm rút cạn sinh lực của tôi trước khi tôi kịp chạm tay vào vạch đích. Nó bắt tôi phải trả một cái giá quá đắt cho những bữa cơm độn sắn nhịn đói triền miên, cho những buổi trưa cuốc đất phơi lưng dưới cái nắng rang đá của nương ngô Pha Luông, cho những đêm thức trắng dầm mình trong sương muối và nỗi âu lo thường trực. Tôi đã quá ngây thơ, quá kiêu ngạo khi tưởng rằng ý chí sắt đá và lòng hận thù cái nghèo có thể thay thế được bát cơm lót dạ và giấc ngủ đàng hoàng. Tôi đã tự lừa mị bản thân rằng chỉ cần nghiến răng chịu đựng gian khổ là có thể san phẳng khoảng cách xuất phát điểm nghìn trùng giữa một đứa trẻ vùng cao thiếu ăn với những đứa con nhà khá giả được chăm sóc đủ đầy ở phố thị.

Nhưng hiện thực cuộc đời tàn nhẫn và sòng phẳng hơn nhiều: một bộ não dù có thiên bẩm đến đâu cũng không thể vận hành bình thường bên trong một cỗ máy sinh học đang rệu rã, hạ đường huyết và run rẩy vì đói lả.

Đứng chết trân trên bậc tam cấp bằng đá xám dẫn xuống sân trường rực nắng, tôi thọc sâu hai bàn tay run rẩy vào túi áo khoác sờn rách. Đầu ngón tay tôi chạm vào bọc tiền lẻ nhăn nhúm, gói kỹ trong lớp giấy xi măng của bác dâu Sương, chạm vào bề mặt nhựa nhám xước xát của chiếc máy tính cầm tay Casio mà Tùng đã liều lĩnh lén lấy lại từ gầm phản của cha nó để dúi vào tay tôi trước giờ tôi lên đường.

Ký ức của những ngày tháng qua bỗng ùa về, quay cuồng trong tâm trí tôi như một cơn gió lốc. Tôi nhớ lại đôi bàn tay thô ráp, nứt nẻ cáu bẩn của bác dâu khi dúi bọc tiền nhăn nheo vào lòng bàn tay tôi trong bóng tối lờ nhờ bên bếp lửa chái nhà: *"Cầm lấy... Mày mà thi trượt thì đừng vác mặt về cái nhà này nữa."* Lời nói cay nghiệt mà chất chứa nỗi đau đớn cùng cực của một người đàn bà khốn khổ đã phải bòn rút từng đồng tiền mồ hôi nước mắt để đánh cược vào đứa cháu mồ côi.

Tôi nhớ lại ánh mắt vằn đỏ, hằn học nhưng thăm thẳm nỗi tuyệt vọng của Tùng sau bụi chuối rừng trong đêm tối trước ngày tôi xuống huyện: *"Tao đéo muốn cả đời này chôn vùi tuổi trẻ ở mấy cái hốc đá dốc Ban Nà này!"* Thằng Tùng đã trao trọn niềm tin thô mộc, vụng về của nó vào tôi, hy vọng tôi có thể mở ra một con đường, một lối thoát cho cả hai đứa.

Và tôi nhớ lại lời cô Hạnh từng ngồi đối diện, nghiêm khắc nhắc nhở tôi bên chiếc bàn giáo viên cũ kỹ: *"Cơ hội không phải là phép màu, Nam ạ. Cơ hội là một cánh cửa mở ra, nhưng bước qua được hay không là do sức lực và sự chuẩn bị của chính em."*

Tất cả những hình ảnh ấy, những thanh âm ấy dội về, va đập chát chúa trong màng nhĩ, bóp nghẹt khí quản của tôi. Cổ họng tôi nghẹn đắng lại, mặn chát vị máu và nước mắt chực trào. Một cảm giác tội lỗi nặng nề, một nỗi nhục nhã ghê gớm dâng lên từ lồng ngực, đè bẹp dí toàn bộ lòng tự trọng của tôi xuống lớp bùn đất. Tôi thấy mình đích thực là một kẻ phản bội. Tôi đã phụ lại sự hy sinh thầm lặng trong cay đắng của bác dâu, phụ lại sự tin tưởng liều lĩnh của Tùng, phụ công ơn dạy dỗ tận tụy của cô Hạnh và thầy Dũng. Tôi đã ôm theo những thứ quý giá nhất gom góp từ mồ hôi của họ, mang theo niềm hy vọng thoát nghèo của cả một gia đình lam lũ, để rồi ngã quỵ thảm hại chỉ vì một thoáng hoa mắt, một phút lơ đễnh mụ mẫm của một kẻ đói ăn.

Dưới bóng râm rộng lớn của cây xà cừ cổ thụ sừng sững giữa sân trường, cô Hạnh và thầy Dũng đang đứng chờ tôi tự bao giờ. Nhìn thấy tôi lảo đảo bước xuống từng bậc đá với gương mặt xám ngoét, cô Hạnh không giấu nổi sự lo lắng, vội vã rảo bước lại gần. Trên tay cô cầm sẵn một chai nước khoáng còn nguyên nắp và một chiếc bánh mì kẹp thịt còn bốc hơi nóng hổi qua lớp giấy báo bọc ngoài.

Cô Hạnh không hề mở miệng an ủi bằng những câu đãi bôi sáo rỗng rằng thi cử trượt đỗ là chuyện thường tình ở đời, hay thất bại lần này sẽ là bài học quý giá cho lần sau. Cô dừng lại ngay trước mặt tôi, đôi mắt sắc sảo nhìn thẳng vào đôi môi khô nứt rớm máu, nhìn vào hai bọng mắt thâm quầng trũng sâu của tôi. Cô chìa chiếc bánh mì ra trước ngực tôi, rồi gặng hỏi bằng một giọng điệu dứt khoát, nghiêm nghị đến run người:

“Sáng nay em đã ăn cái gì vào bụng? Nói thật cho cô.”

Tôi cúi gầm mặt xuống nền đất bê tông, nhìn đôi giày vải rách mõm của mình, cổ họng nghẹn ứ không thốt nên nổi một lời hoàn chỉnh. Trước ánh nhìn nghiêm khắc nhưng soi thấu tận đáy sâu tâm can của cô giáo, lớp vỏ bọc kiêu hãnh gượng gạo mà tôi cố công dựng lên bấy lâu hoàn toàn vỡ vụn. Nước mắt tôi ứa ra, lăn dài trên đôi má hóp háp. Tôi lí nhí thừa nhận mẩu cơm nguội khô khốc nuốt vội từ bốn giờ sáng, thừa nhận những buổi trưa nhịn đói liên miên để gom từng tờ tiền lẻ năm trăm, một nghìn đồng trả tiền máy tính và mua tập giấy nháp, thừa nhận cả những đêm thức trắng chong đèn dầu học bù sau những ngày cuốc nương rách cả da tay—những chuỗi ngày tự đày đọa bản thân mà bấy lâu nay tôi vẫn luôn ngây thơ tự huyễn hoặc gọi đó là “ý chí chịu khó”.

Thầy Dũng đứng bên cạnh, lẳng lặng cầm lấy tờ giấy nháp chép vội lại mã nguồn Pascal mà tôi vừa rút ra từ túi áo. Thầy kéo tôi ngồi xuống gờ gạch của mép bồn hoa dưới gốc xà cừ, trải tờ giấy nháp lên đầu gối rồi bắt đầu rà soát. Ngón tay thô ráp, ám vàng khói thuốc lào của thầy lướt chậm rãi qua từng dòng lệnh, rồi dừng lại, gõ mạnh đầu ngón tay trỏ xuống hai vị trí chết người:

“Hai bài đầu mày giải cực sắc, cấu trúc dữ liệu gọn gàng và tư duy giải thuật rất chặt chẽ, không chê vào đâu được. Đến câu ba, thuật toán quy hoạch động tối ưu mày chạm đúng vào bản chất sâu xa nhất của bài toán, nhưng mày hụt sạch ở những bước sơ đẳng nhất cần sự tỉnh táo: sót điều kiện biên chi phí bằng không, lộn dấu so sánh số nút trung chuyển. Mày thấy rõ chưa? Tài năng hay tư chất bẩm sinh không thể giúp một cơ thể đang kiệt quệ tự nhiên có thêm năng lượng để tỉnh táo. Khi não bộ của mày đói lả và thiếu ngủ triền miên, sự chính xác và khả năng tập trung sẽ là những thứ đầu tiên biến mất.”

Tôi trở về trường huyện trên chuyến xe đò chiều hôm ấy trong một bầu không khí im lặng nặng nề như chì. Cửa kính xe bám bụi đỏ rung bần bật theo từng ổ gà trên con đường gập ghềnh xuyên qua thung lũng mù sương. Suốt chặng đường, tôi né tránh hoàn toàn việc gửi thư hay nhắn gửi bất kỳ tin tức nào về bản Nà Ban. Tôi sợ hãi tột cùng ánh mắt dò hỏi, thất vọng của bác dâu Sương; tôi sợ những lời mỉa mai cay độc của bác Lương khi ông ta vin vào thất bại này để làm bằng chứng đanh thép rằng việc học hành của tôi chỉ tổ tốn cơm tốn bạc, rước nợ nần về cho dòng họ; và điều đáng sợ hơn cả là sâu thẳm bên trong, tôi bắt đầu cay đắng tin vào cái kết cục tàn nhẫn ấy.

Những ngày sau đó tại trường huyện, cô Hạnh giám sát việc ăn uống và nghỉ ngơi của tôi một cách gắt gao chưa từng thấy. Chiều nọ, đứng ngay trước cửa gian kho chứa củi ẩm mốc của nhà bà giáo Ngô, nhìn thấy tôi lại định chong đèn dầu ngồi học qua đêm, cô khoanh tay, đặt ra một giới hạn nghiêm khắc bằng giọng nói dứt khoát không khoan nhượng:

“Nếu em tiếp tục đày đọa thân xác mình, giấu đói giấu mệt rồi tự mãn gọi đó là ý chí, cô không thể coi đó là nghị lực được nữa. Đó là sự liều lĩnh mù quáng, là hành vi tự phá hủy con đường mà chính em đang cố công gầy dựng. Muốn đi đường dài, muốn thoát khỏi cái hốc núi này, trước hết em phải học cách sống sót và giữ lấy chính mình.”

Cuối buổi chiều hôm ấy, sau khi lớp học chính khóa đã tan hết từ lâu, thầy Dũng bất ngờ gọi tôi sang góc trong cùng của phòng máy thực hành. Căn phòng vắng lặng chỉ còn vương mùi ẩm mốc của tường vôi cũ và mùi nhựa cháy nhè nhẹ từ các vi mạch điện tử. Thầy hất hàm về phía một chiếc thùng các-tông lớn nằm khuất dưới gầm bàn giáo viên, bên trong chứa ngổn ngang những bảng mạch màu xanh lá phủ đầy bụi bặm, vài thanh RAM cũ mòn vẹt chân đồng, những cuộn cáp bẹ IDE màu xám ngoét và một bộ nguồn máy tính thanh lý vừa được gom về.

Thầy Dũng nhìn thẳng vào mắt tôi, giọng nói trầm xuống, nặng trĩu nhưng chất chứa một niềm tin kiên định:

“Tao xin được đống phế liệu này từ kho thanh lý của phòng giáo dục huyện. Nếu mày chịu học cách lắp ráp và đi lên từ những thứ không hoàn hảo, thầy trò mình sẽ ghép cho mày một cỗ máy riêng.”

Chương này thế nào?Đánh giá giúp Readeep đề xuất đúng hơn cho bạn