| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | LQDOJ Cup 2023 - Round 3 - Schedule | 100 (p) | 1.0s | 512M |
| 2 | LQDOJ Cup 2023 - Round 3 - Formation | 100 (p) | 3.0s | 1G |
| 3 | LQDOJ Cup 2023 - Round 3 - Bucket | 100 (p) | 1.0s | 512M |
Một ngày nọ, phòng kỹ thuật của một công ty được yêu cầu phải thực hiện \(m\) công việc, công việc thứ \(i\) có \(k_i\) phần. Họ phải hoàn thành hết tất cả công việc đó trong vòng \(n\) ngày được đánh số từ ngày \(1\) đến ngày \(n\). Được biết phòng kỹ thuật có một siêu máy tính có thể chứa rất nhiều lõi. Mỗi lõi có khả năng thực hiện và hoàn thành một phần của một công việc bất kỳ trong đúng một ngày, các phần của một công việc có thể được thực hiện và hoàn thành một cách song song và không cần liên tiếp (tức là có thể thực hiện các phần trong một hoặc nhiều ngày). Một công việc được hoàn thành khi và chỉ khi tất cả các phần của công việc đó được hoàn thành. Biết rằng công việc thứ \(i\) chỉ có thể được thực hiện và hoàn thành từ đầu ngày \(s_i\) đến hết ngày \(t_i\), vì chi phí lắp đặt và bảo trì rất tốn kém nên trưởng phòng kỹ thuật muốn sử dụng ít lõi nhất có thể.
Yêu cầu: Tính số lượng lõi ít nhất cần phải lắp đặt sao cho vẫn đảm bảo hoàn thành hết \(m\) công việc trong \(n\) ngày.
Test 1
3 4
3 1 3
2 2 4
4 1 4
3
Số lượng lõi ít nhất cần phải lắp đặt là \(3\), các công việc được thực hiện như sau:
Test 2
4 3
1 1 3
4 3 3
2 2 3
2 1 2
4
Ngày hôm nay, các chiến sĩ thuộc Đại đội 9 đang tập luyện tập hợp đội hình trên thao trường. Thao trường có khuôn viên là một hình chữ nhật gồm \(r\) hàng và \(c\) cột. Các hàng được đánh số từ trên xuống dưới từ \(1\) tới \(r\) và các cột được đánh số từ trái sang phải từ \(1\) tới \(c\). Giao của hàng \(i\) và cột \(j\) sẽ là ô vuông có tọa độ \((i, j)\). Ta định nghĩa khoảng cách giữa hai ô \((x, y)\) và \((u, v)\) sẽ bằng \(|x - u| + |y - v|\). Hiện tại, trên mỗi ô vuông sẽ có tối đa 1 chiến sĩ đang đứng. Một đội hình sẽ cần có đúng \(k\) chiến sĩ. Khi phát hiệu lệnh tập trung đội hình tại một ô \((x, y)\) nào đó, \(k\) chiến sĩ có khoảng cách từ ô đang đứng tới ô \((x, y)\) là ngắn nhất sẽ di chuyển tới ô này (tính cả chiến sĩ đang đứng tại ô \((x, y)\) nếu có). Thời gian di chuyển của một chiến sĩ sẽ đúng bằng khoảng cách giữa hai ô.
Yêu cầu: Với mỗi ô \((x, y)\) nằm trong khuôn viên của thao trường, hãy tính tổng thời gian di chuyển của \(k\) chiến sĩ sẽ thực hiện xếp đội hình nếu ta phát hiệu lệnh tập trung tại ô này.
Test 1
3 3 2
0 0 1
1 1 0
0 1 0
17
Tổng thời gian di chuyển tương ứng của từng vị trí là:
3 2 2
1 1 2
2 1 3
Test 2
5 6 3
1 0 0 1 0 1
0 1 1 0 1 0
0 0 1 0 1 0
1 0 0 1 1 1
0 0 0 1 0 1
114
Tổng thời gian di chuyển tương ứng của từng vị trí là:
5 4 4 4 3 4
4 3 2 3 3 4
5 4 3 3 2 4
6 5 4 2 2 2
8 7 5 3 3 3
Có \(n\) thùng đựng nước sôi, các thùng nước được đánh số từ \(1\) đến \(n\), thùng nước thứ \(i\) có bán kính \(b_{i}\). Dì của Tấm lấy thêm \(n\) chiếc nắp đậy, đậy các thùng nước lại. Thùng nước thứ \(i\) được đậy bởi chiếc nắp có bán kính \(a_{i}\). Dì ghẻ bắt Tấm phải thực hiện một công việc vô lý:
Hướng dẫn Tấm xong, Dì dặn dò Cám trông chừng và theo dõi Tấm làm việc đến khi đáp ứng được yêu cầu thì ả mới để Tấm đi hội. Ngoài ra, vì thích gây khó dễ, Cám bắt buộc Tấm phải làm sao cho số thùng bị đổi nắp là ít nhất, tức là số thùng không bị đổi nắp là nhiều nhất. Chớp lấy cơ hội để làm việc tốt, trong làn sương 100 độ của nước sôi, Bụt dần hiện lên và hỏi:
"Tại sao con khóc?"
Nhưng khi Bụt vừa dứt câu thì Tấm đã giải xong bài toán, thay quần áo và đi dạo hội trong sự ngỡ ngàng của Bụt và Cám.
Câu chuyện sau đó thì ai cũng biết... Nhưng không ai hiểu được vì sao Tấm lại có thể giải bài toán hóc húa ấy một cách dễ dàng như vậy.
Thời nay, với sự tiến triển vượt bậc của công nghệ và thuật toán. Bài toán năm xưa mà Tấm giải được đã được mang ra để nghiên cứu trong kỳ thi LQDOJ CUP này.
Yêu cầu: Bạn hãy viết chương trình để giải bài toán này nhằm nghiên cứu về cách mà Tấm giải được bài toán này nhé. Khác với bài toán năm xưa, dữ liệu đầu vào có thể khác với những gì mà Dì đã cho Tấm nên có thể xảy ra trường hợp không thể đổi các nắp thùng sao cho thỏa mãn.
Test 1
3
2 1
3 3
5 2
3
Vốn kích thước các nắp đều đã lớn hơn kích thước thùng, nên không cần phải đổi nắp thùng nào với nhau cả, tức có \(3\) thùng không bị đổi.
Test 2
5
1 2
2 4
4 5
6 1
5 3
1
Tấm có thể đã giữ nguyên thùng thứ \(5\) là \((5,3)\) và đổi nắp như sau:
Sau khi đổi, ta có kích thước các thùng và nắp thỏa mãn điều kiện:
2 2
4 4
6 5
1 1
5 3