Tàn code lệnh 3 - Hoa Sơn Luận code


Thần Code Sơn Trang, mười năm đã trôi qua
Tuyết bay trắng trời, gió thổi vi vu như cắt da cắt thịt. Cả 1 vùng tuyết sơn chìm trong sắc trắng, không khí lạnh lẽo thê lương
Một người đại hán tuổi chừng ba mươi, đang ngồi lặng lẽ bên máy tính, song thủ gõ phím lách cách, mục quang sáng ngời đang chăm chăm nhìn màn hình.
Thiếu chủ, đã canh hai rồi, sao người chưa đi ngủ
Một lão nô đầu tóc bạc trắng, tay bưng tách trà dâng lên

Người đại hán nó chính là Dương Cú Đơ, thiếu chủ của Thần Code Sơn Trang. 
Mười năm qua, từ ngày được Hắc Y Nhân truyền cho Coding thập tam thức trong cuốn Clean Code. Ta ngày đêm nghiên cứu thực hành, luyện tập trên cả codefight, hacker rank. Thời gian thoi đưa, đến giờ cũng đã làu thông, level của ta trên codefight cũng đạt hàng top rồi. Nhưng sao ta vẫn không thể ngộ hết được bí kíp này, không sao đạt được cảnh giới code lưu hỏa thuần thanh.
Thiếu chủ, ngài tuy luyện Clean Code trong mười năm, nhưng chủ yếu là bế quan ở Thần Code Sơn Trang này, không làm dự án thật, không tiếp xúc với các cao thủ coding trong thiên hạ. Khác gì có học mà chẳng có hành, kiếm báu đem ra bổ củi. Đâu thể đạt được đến mức coding guru, xuất thần nhập hóa được.Tôi nghe nói ở Thăng Long thành, cứ 5 năm một lần, có tổ chức “Hoa Sơn Luận Code” coding contest nơi người chơi ra tay viết code, diệt “bug”, đả bại testcase, từ đó phân định thiên-hạ-đệ-nhất lập trình, nơi các anh hùng coding trong thiên hạ tụ về, so tài cao thấp để tìm ra coding minh chủ. Sao thiếu chủ không đến đó thi triển tài năng, biết đâu không vang danh thiên hạ, lấy lại thanh danh cho Thần Code Sơn Trang chúng ta.
Dương Cú Đơ nghe xong như tỉnh cơn mê, nghĩ thầm
Hoa Sơn Luận Code, biết đâu ta sẽ tìm được cựu thù đã sát hại cả nhà ta năm xưa. Đúng là cơ hội tốt
Thiếu chủ, xưa kia lão trang chủ uy chấn giang hồ không chỉ là nhờ tài code đạo mà còn cò món bảo vật trấn trang được cất giấu bí mật. Nay thiếu chủ đang trưởng thành, lão nô xin trao lại cho người
Đây là vũ khí đứng đầu trong binh khí phổ, tên là Ô Nha Thử (black Mouse) và Ngọc Tịnh Bàn (Keyboard). Ngày xưa những kẻ đồ sát Sơn Trang của chúng ta cũng chỉ vì thèm muốn 2 món bảo vật này.
Kết quả hình ảnh cho top wireless keyboard and mouse
Người có 2 món bảo vật này thì tốc độ code thì như tẩu thạch phi sa, không ai bì kịp
Dương Cú Đơ mừng lắm, lập tức chuẩn bị tư trang lập tức lên đường đến Thăng Long thành. Đường xa vạn dặm, mất 3 tháng mới tới nơi, vừa hay đúng ngày coding đại hội. Đúng là Hoa Sơn Luận Code, cao thủ như nấm, các bang phái đều quy tụ tại đây. 
Dương Cú Đơ bước vào đại sảnh thi lễ, nhìn sang ngang thấy một hán tử đeo kính, mặt vàng, liền chắp tay chào
Linus Torvalds
Vị này chỉ cười mỉa “Talk is cheap, so me the code”. Đó là Linus Torvalds, người đã viết ra Linux và Git. Bang chủ Linux Foundation, hệ điều hành open source mà ngày nay các server vẫn đang sử dụng.
Dương Cú Đơ lòng hơi e ngại, bỗng cạnh đó, mội tiếng nói vang lên
Vị thiếu hiệp này ở đâu đến, cho biết quý tính đại danh
Một vị tiền bồi tóc đã hoa râm thì ra là Donald Knuth, người khai sinh ra thuật toán. Giang hồ đồn rằng Facebook môn ở Sillicon Valley phát minh ra thuật toán New Feeds hay Amazon phái ở Settles nổi tiếng với thuật toán stock recommendation đều là nhờ học hỏi công trình toán học của ông.
Tại hạ Dương Cú Đơ, từ Thần Code Sơn Trang, từ nhỏ cũng có học coding, đến đâu mạo muội xin học hỏi
Dương Cú Đơ, tên này ta chưa nghe qua, có biết code JS không, đã làm Promise chưa, thành thạo Angular JS với React không.
Tiếng một vị tiên sinh bề ngoài nho nhã vang lên. Brenden Eich, tổng đà chủ Mozilla firefox, người phát minh ra JavaScript.
Dương Cú Đơ trong lòng ớn lạnh nghĩ thầm “ Không ngờ thiên hạ nhiều người tài đến vậy, uổng công ta 10 năm tu luyện coding thập tam thức”. 
Chưa biết trả lời thế nào, bỗng thấy Torvalds chưởng môn Linux phái, quát to một tiếng như sấm nổ, song thủ phát kình, tung ra 1 đạo bạch quang 
You are given an n x n 2D matrix that represents an image. Rotate the image by 90 degrees (clockwise).
a = [[1, 2, 3],
     [4, 5, 6],
     [7, 8, 9]]
The output should be 
rotateImage(a) =
    [[7, 4, 1],
     [8, 5, 2],
     [9, 6, 3]]
Nghe nói Thần Code Sơn Trang có uy danh trong Việt Code Đạo, ngươi đến từ đó chắc hẳn bản lĩnh không tệ, cho người nội một canh giờ giải bài code này, yêu cầu giải với độ phức tạp O(n), memory O(1). Người thích dùng JS, Java, C# thì tùy, ta không quản
Nếu làm không xong, chạy test case không pass, performance không đạt. Thì Thần Code Sơn Trang chỉ là hư danh, đâu xứng so tài với các cao thủ nơi đây
Dương Cú Đơ mặt không đổi sắc, chắp tay 
“Tại hạ lãnh mệnh, xin chỉ giáo”
Nói rồi, phất tay áo rút ra bảo bối, tức thì hào quang chói lòa sáng rực cả góc trời
Song thủ gõ phím như phượng múa rồng bay, quả là bảo bối, mỗi lệnh code ra nhưng gió cuốn mưa bày, mọi cao thủ đều biến sắc, chưa tàn một nén hương đã ra kết quả. Run test case tất cả đều pass

function rotateImage(matrix) {
  const n = matrix.length;
  const x = Math.floor(n/ 2);
  const y = n - 1;
  for (let i = 0; i < x; i++) {
     for (let j = i; j < y - i; j++) {
        k = matrix[i][j];
        matrix[i][j] = matrix[y - j][i];
        matrix[y - j][i] = matrix[y - i][y - j];
        matrix[y - i][y - j] = matrix[j][y - i]
        matrix[j][y - i] = k
     }
  }
  return matrix;
}

Các cao thủ đều đừng hết cả dậy
  • Ngọc Tinh Bàn, Ô Nha Thử
  • Coding thập tam thức, môn võ công này đã thất truyền 20 năm nay, tên tiểu tử này sao lại biết
  • Chả lẽ hắn là đệ tử của … không thể nào

(Còn tiếp)


Không có nhận xét nào

Được tạo bởi Blogger.