TS10 Cần Thơ 2026 - Trạm dừng chân

Xem dạng PDF

Gửi bài giải

Điểm: 11,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trên một tuyến đường dài có ~m~ xe khách đang lưu thông và ~n~ trạm dừng chân được xây dựng dọc theo tuyến đường. Tuyến đường này được biểu diễn trên một trục số, mỗi đơn vị trên trục số tương ứng với ~1~ km. Hiện tại:

  • Xe thứ ~i~ ~(1 \le i \le m)~ đang ở vị trí ~a_i~.

  • Trạm dừng chân thứ ~j~ ~(1 \le j \le n)~ nằm ở vị trí ~b_j~.

Khi cần nghỉ ngơi hoặc tiếp nhiên liệu, mỗi xe luôn tìm trạm dừng chân gần nhất để tối ưu quá trình di chuyển.

Yêu cầu: Hãy xác định quãng đường mà mỗi xe cần di chuyển để đến trạm dừng chân gần nhất.

Input

  • Dòng đầu chứa hai số nguyên dương ~m~ và ~n~.

  • Dòng thứ hai chứa ~m~ số nguyên dương ~a_1, a_2, \dots, a_m~, mỗi số có giá trị không vượt quá ~10^6~.

  • Dòng thứ ba chứa ~n~ số nguyên dương ~b_1, b_2, \dots, b_n~, mỗi số có giá trị không vượt quá ~10^6~.

Output

Ghi ra một dòng gồm ~m~ số nguyên, số thứ ~i~ cho biết quãng đường xe thứ ~i~ di chuyển đến trạm dừng chân gần nhất tìm được.

Scoring

Subtask Điểm Ràng buộc
1 ~70\%~ ~m, n \le 10^3~
2 ~30\%~ ~m, n \le 10^5~

Sample Input 1

5 4
12 25 40 50 70
10 30 50 80

Sample Output 1

2 5 10 0 10

Notes

  • Xe ở vị trí ~12~ di chuyển đến trạm ở vị trí ~10~, quãng đường di chuyển là ~2~ km.

  • Xe ở vị trí ~25~ di chuyển đến trạm ở vị trí ~30~, quãng đường di chuyển là ~5~ km.

  • Xe ở vị trí ~40~ di chuyển đến trạm ở vị trí ~50~, quãng đường di chuyển là ~10~ km.

  • Xe ở vị trí ~50~ di chuyển đến trạm ở vị trí ~50~, quãng đường di chuyển là ~0~ km.

  • Xe ở vị trí ~70~ di chuyển đến trạm ở vị trí ~80~, quãng đường di chuyển là ~10~ km.


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    quankidlo  đã bình luận lúc 6, Tháng 11, 2026, 13:42

    Gửi tôi của năm 2030,

    Chào cậu, phiên bản tương lai của tôi bốn năm sau.

    Vào khoảnh khắc tôi đang viết những dòng này, thế giới của tôi xoay quanh những dòng code C++, những đêm loay hoay tìm thuật toán tối ưu, và những bài toán tưởng chừng bế tắc nhưng rồi lại sáng tỏ sau một dấu phẩy hay một chiếc vòng lặp đúng chỗ. Tôi không biết năm 2030, cậu đang đứng ở đâu, đang đối mặt với những thử thách nào, hay đã chạm đến những cột mốc gì mà tôi lúc này vẫn chỉ dám mơ ước.

    Nhưng tôi hy vọng, dù thời gian có dịch chuyển thế nào, cậu vẫn giữ được ngọn lửa đam mê và sự kiên trì thuở ban đầu.

    Cuộc sống ngoài kia chắc chắn không giống một bài toán trên Online Judge—nó không có sẵn các giới hạn thời gian 1.0 giây, không có sẵn test case đúng sai rõ ràng, và đôi khi tràn ngập những "bug" cuộc đời mà không một trình biên dịch nào có thể giúp cậu tìm ra lỗi. Sẽ có những lúc mọi thứ chệch hướng, những dự định đổ vỡ, hay những áp lực khiến cậu muốn dừng lại. Những lúc ấy, mong cậu hãy nhớ lại cách chúng ta từng đối diện với một lỗi Segmentation Fault: bình tĩnh đọc lại từng dòng, tìm nguyên nhân, sửa chữa và biên dịch lại từ đầu.

    Mỗi nỗ lực nhỏ ngày hôm nay, từng dòng logic cậu viết, từng bài học cậu góp nhặt qua sự kiên trì và niềm tin, chính là những khối lệnh đầu tiên xây nên tương lai của cậu ở năm 2030.

    Nếu lúc này cậu đã đạt được những gì mình muốn, chúc mừng cậu, nhưng đừng ngủ quên trên chiến thắng. Còn nếu mọi chuyện chưa được như ý, hãy coi đó chỉ là một bài test case khó chưa tìm ra lời giải tối ưu. Cậu có quyền chậm lại, nhưng đừng bao giờ bỏ cuộc.

    Hãy sống một cách trọn vẹn, tối ưu hóa từng khoảnh khắc, và luôn là phiên bản kiên cường, tử tế nhất.

    Cố lên nhé!

    Từ tôi của năm 2026.