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://anhkiet.biz
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 cho Hura Apps - một startup nhỏ về công nghệ 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

10 Công Cụ Có Thể Thay Thế ChatGPT

ChatGPT là một mô hình ngôn ngữ lớn được phát triển bởi OpenAI. Nó cung cấp các câu trả lời nhanh chóng và ngắn...

Hướng Dẫn Đăng Ký Nhận Mã Giảm Giá Highland Coffee

Highland Coffee đang có nhiều chương trình khuyến mã cho khách hàng của mình. Các khuyến mãi có thể bao gồm upsize, mua 1...

Quà cuối năm 2022 từ Shopify

Năm nay nhận quà từ các đối tác công nghệ hơi bị nhiều. Mới đây mình lại nhận được quà từ Shopify. Quà về đúng...

Nhận quà từ đối tác công nghệ Recharge

Recharge là một trong những công ty chuyên cung cấp giải pháp bán hàng đăng ký định kỳ (subscription payments) cho các nền tảng...

Hướng dẫn tải video ngắn Facebook Reel miễn phí

Facebook Reels là tính năng video ngắn mới của Facebook. Nếu bạn muốn tải những video ngắn này của mọi người thì bạn có...

BẠN XEM CHƯA

Khắc phục tình trạng vượt quá giới hạn số tập tin trên cPanel

Có bao giờ bạn sử dụng dịch vụ hosting với hệ quản trị cPanel và gặp tình trạng như hình bên dưới không? Đây là...

Thần tượng

Không biết nhập đề như thế nào nên xin kể câu chuyện của mình. Nhưng xin nói trước đây chỉ là ý kiến chủ...

Tra cứu điểm thi Tốt nghiệp THPT Quốc gia năm 2019 của thí sinh Bình Định

Kỳ thi Tốt nghiệp THPT quốc gia 2019 đã kết thúc và thông tin điểm thi THPT quốc gia 2019 là điều quan tâm...

Đổi iPhone cũ lấy iPhone mới tại FPT Shop Bình Định

Hiện tại FPT Shop đang triển khai chương trình thu cũ và đổi mới iPhone với nhiều ưu đãi rất hấp dẫn. Theo đó...

Giàu và nghèo

Người giàu: Tôi tạo ra cuộc đời tôi. Người nghèo: Cuộc sống toàn những việc bất ngờ xảy đến với tôi. Người giàu: Tham gia cuộc...