Trang chủ Lập trình Javascript - HTML Bài toán tìm số cô đơn trong mảng

Bài toán tìm số cô đơn trong mảng

Trên trang Code Fights (tôi đã giới thiệu về trang web này ở bài viết: Thử tài tìm lỗi của mã lập trình với Code Fights) có mục Challenge (tạm dịch là Thách thức). Ở đây người ta sẽ đưa ra một bài toán yêu cầu người tham gia giải quyết và bài giải tối ưu là bài giải có lời giải… ngắn nhất.

Hôm rồi có yêu cầu như thế này.

Bài toán tìm số cô đơn

Tạm dịch là: Cho một mảng các số chứa một số không được lặp và nhiệm vụ người tham gia là viết mã để tìm ra số đó.

Tôi bắt đầu hiểu là có thể chuỗi chứa nhiều giá trị không lặp nên code xuất ra mảng chứa các phần tử đó. Máy không chịu vậy là hiểu nó chỉ lấy một giá trị và tôi viết đoạn mã này và vượt qua được tất cả các bộ test.

Thật ra lúc đầu tôi không để ý lắm đến tiêu chí đánh giá (lời giải càng ngắn càng tốt) nên viết cố gắng càng tường minh càng tốt nhưng sau này mới nhận ra tiêu chí nên bắt đầu sửa. Một số mẹo vặt để tối ưu lời giải cho bài toán này:

  • Người ra đề chỉ yêu cầu mảng chứ 1 số thỏa điều kiện đó nên gặp là trả về luôn khỏi kiểm tra tiếp.
  • Thay vì đặt biến tên dài lằng ngoằng để tường minh thì có thể đặc là: a, b, c… cho ngắn.
  • Giá trị nào lặp nhiều lần mà số ký tự dài thì nên gán là: a, b, c… cho rút ngắn ký tự khi gọi lại.
  • Loại bỏ hết các dấu mở ngoặc nhọn, đóng ngoặc nhọn ({}), chấm phảy (;) nếu có thể.

Ấy vậy mà vẫn không rút ngắn được bao nhiêu và đây là bài giải của người mà mình phải gọi là thánh. Một dòng duy nhất. Quá kinh!

Chia sẻ với các bạn cho vui. Các bạn học CNTT mới nhập môn lập trình thì có thể tham khảo thuật toán.

Thật ra khi kết thúc cuộc thi với bài toán này mình xem ra thì thấy có nhiều đoạn mã viết rất hay nếu xét về độ tối ưu thì mình thấy OK nhưng ngặt nổi ở đây tối ưu là lời giải ngắn nên đành chịu thôi ^^!

PS: Ở đây mình viết bằng Javascript.

Huỳnh Mai Anh Kiệt

- Advertisement -
Huỳnh Mai Anh Kiệthttps://www.mangbinhdinh.vn
Anh là một người đam mê công nghệ. Hiện tại anh là một lập trình viên tại Quy Nhơn.

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây

BÀI VIẾT MỚI

Hướng dẫn tạo hiệu ứng mưa rơi trên trang web với JavaScript

Quy Nhơn chớm bước vào mùa hè với nắng nóng. Những lúc thế này tự nhiên lại thèm những cơn mưa để giải tỏa...

Instagram ra mắt tính năng tạo chú thích tự động cho Stories và Reels

Tiếp bước TikTok, Instagram hiện cũng đã ra mắt tính năng tạo chú thích (caption) tự động của riêng mình. Tính năng mới này đã...

Facebook đã chính thức cập nhật tính năng “bong bóng chat” trên iPhone

Mới đây, Facebook đã chính thức cập nhật tính năng Chat Heads (hay còn gọi là bong bóng chat) trên iPhone, cho phép người...

Facebook Workplace đạt mốc 7 triệu người dùng trả phí

Vào thứ Ba vừa rồi, Facebook vừa mới thông báo ứng dụng Facebook Workplace của họ tính cho tới thời điểm hiện tại đã...

Instagram sẽ hỗ trợ người dùng có tầm ảnh hưởng (KOLs) tạo cửa hàng và bán hàng trên nền tảng của mình

Trong một buổi phát sóng trực tiếp gần đây nhất, Mark Zuckerberg - Giám đốc điều hành Facebook đã công bố với giám đốc...

BẠN XEM CHƯA

Trang web hẹn hò dành cho những người đàn ông… chim bé

DinkyOne (www.dinkyone.com), một trang web hẹn hò mới, với mục tiêu chống lại định kiến "nam tính độc hại" và giúp những quý ông...

Dạo quanh Quy Nhơn ở năm 1994

Mạng Bình Định mời các bạn dạo quanh Quy Nhơn trong năm 1994 với clip do một người dân quay lại. [youtube https://www.youtube.com/watch?v=V7QRvyVUuZ8?rel=0&showinfo=0&w=480&h=360] Nguồn: FB/Quê tôi...

Ashampoo Photo Converter 2 công cụ chuyển đổi hình ảnh đa năng

Có nhiều phần mềm giúp bạn chuyển đổi qua lại giữa các định dạng hình ảnh tuy nhiên những công cụ này ít khi...

Nhận diện hành động cuộn lên hay xuống bằng Javascript

Thỉnh thoảnh mình có hay nhận mấy task yêu cầu thực thi vài hành động khi khách hàng scroll (cuộn) lên hoặc xuống. Và...

Khám phá đầm Thị Nại

Ngay ở Quy Nhơn, có rất nhiều điểm đến để bạn vừa thực hiện chuyến nghỉ dưỡng của mình, vừa khám phá cuộc sống...