Không hỗ trợ Mobile

Chế độ luyện tập yêu cầu môi trường màn hình lớn để làm bài và chống gian lận hiệu quả. Vui lòng truy cập bằng máy tính (Desktop/Laptop) để tiếp tục thao tác.

Quay lại trang chủ

#1497 · HUTECH IT CODER

MÔ TẢ BÀI TOÁN

Nhằm hỗ trợ khả năng tự học cho sinh viên ngành CNTT, Khoa đã phát triển hệ thống hỗ trợ tự học và tự chấm các bài lập trình với tên gọi là IT-CODER (https://itcoder.hutech.edu.vn).

17004490128092.png

Để chuẩn bị cho kỳ thi Olympic quốc gia, CLB Olympic Tin học HUTECH đang đã sử dụng hệ thống ITCODER nhằm hỗ trợ chấm bài cho N đề thi khác nhau, giả sử rằng mỗi đề thi như vậy đều chỉ có đúng 2 bài tập. Mỗi bài tập đều sử dụng K test-case để hỗ trợ việc chấm điểm. Và mỗi test-case như vậy đều có độ khó được đo lường tương ứng là với 1 số nguyên dương từ 0-10^9.

Để có thể lựa chọn được chính xác các sinh viên có năng lực tốt, Ban chủ nhiệm CLB muốn tất cả N đề thi này có độ khó chênh lệch giữa 2 bài tập là ít nhất. Biết rằng độ khó của mỗi bài tập được tính bằng độ khó nhỏ nhất của tất cả các test-case đã thiết lập của bài tập đó.

Với số lượng 2 × N × K các độ khó sẽ sử dụng cho các đề thi, BCN CLB muốn phân bổ các đề thi sao cho sự chênh lệch độ khó giữa các bài tập trong đề thi không vượt quá ngưỡng d. Hãy giúp CLB phân bổ để tìm ra d nhỏ nhất có thể tạo được?

Dữ liệu vào

  • Dòng 1: Dòng đầu tiên chứa hai số nguyên dương NK test-case cách nhau bằng khoảng trắng.
  • Dòng 2: Chứa 2 × N × K số nguyên p_i cách nhau bằng giá trị khoảng trắng, chỉ định độ khó cần sử dụng (1 ≤ p_i ≤ 10^9).

Dữ liệu ra

Hiển thị số nhỏ nhất d sao cho bạn có thể phân bổ các độ khó để đảm bảo sự chênh lệch giữa các đề thi không vượt quá d.

BẢNG TỔNG QUAN KẾT QUẢ

# Tài khoản Kết suất Lúc nộp
1
163 ms 3880 KB
511 Bytes
25/03/2024
02:44
2
163 ms 3880 KB
860 Bytes
22/03/2024
23:36
3
163 ms 3884 KB
520 Bytes
25/03/2024
02:41
4
164 ms 3876 KB
835 Bytes
22/03/2024
23:31
5
165 ms 4856 KB
930 Bytes
22/03/2024
23:24
6
166 ms 3880 KB
541 Bytes
23/03/2024
11:31
7
167 ms 3876 KB
835 Bytes
22/03/2024
23:32
8
167 ms 3880 KB
551 Bytes
23/03/2024
11:33
9
168 ms 16044 KB
781 Bytes
24/11/2023
22:13
10
169 ms 4776 KB
961 Bytes
22/03/2024
23:20
11
170 ms 3884 KB
551 Bytes
23/03/2024
11:34
12
172 ms 8764 KB
930 Bytes
22/03/2024
23:23
13
172 ms 16044 KB
779 Bytes
24/11/2023
22:31
14
172 ms 16048 KB
767 Bytes
24/11/2023
22:18
15
172 ms 16048 KB
769 Bytes
24/11/2023
22:12
16
173 ms 4780 KB
922 Bytes
22/03/2024
23:21
17
176 ms 4772 KB
961 Bytes
22/03/2024
23:20
18
177 ms 16044 KB
769 Bytes
24/11/2023
22:12
19
177 ms 16048 KB
779 Bytes
24/11/2023
22:21
20
178 ms 16052 KB
767 Bytes
24/11/2023
22:15

LỊCH SỬ CÁ NHÂN

Vui lòng đăng nhập để xem lịch sử làm bài của bạn.

THẢO LUẬN BÀI TOÁN

Chưa có thảo luận nào cho bài này.

GỢI Ý & HƯỚNG DẪN

Ví dụ với N = 2 đề thi, mỗi bài tập có K = 3 test-case.

  • Đề thi 1, có 2 bài tập trong đó có thể chọn:
    • Bài tập 1 sử dụng test-case có độ khó (1, 2, 5)
    • Bài tập 2 sử dụng test-case có độ khó (2, 4, 12). Độ chênh lệch độ khó của 2 bài tập này là 1.
  • Đề thi 2, có 2 bài tập
    • Bài tập 1 sử dụng test-case có độ khó (6,8,9)
    • Bài tập 2 sử dụng test-case độ khó (7,10,11). Độ chênh lệch độ khó của 2 bài tập này là 1.

Như vậy có thể phân bổ tất cả các đề thi với d = 1.

Viết code