Không tiếp đất (THTB Sơn Trà, Đà Nẵng 2023)

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1300 Thời gian: 1.0s Bộ nhớ: 1G Input: KTIEPDAT.INP Output: KTIEPDAT.OUT

Trò chơi không tiếp đất là trò chơi sử dụng các viên gạch để đi trên mặt đất từ vị trí xuất phát đến đích mà không chạm chân xuống đất. Cụ thể, mặt đất được chia ra làm \(n\) ô vuông liên tiếp từ 1 đến \(n\) (0 là điểm xuất phát), độ đẹp ô đất thứ \(i\)\(A[i]\). Nhận thấy rằng, tốc độ di chuyển phụ thuộc vào vị trí đặt các viên gạch trên mặt đất, chính bằng tổng độ đẹp của các ô đất được đặt gạch. Tuy nhiên, độ dài sải chân cũng như thể lực của mỗi người là có hạn, trong đó họ chỉ có thể bước \(a\) bước độ dài \(x\) (qua \(x\) ô đất), và đúng \(b\) bước độ dài \(y\) (qua \(y\) ô đất). Tìm cách đặt \(a+b\) viên gạch trên các ô đất từ 1 đến \(n\), sao cho tổng độ đẹp của các ô đất được đặt gạch là lớn nhất có thể.

Một cách hình thức, cần tạo ra bộ số \(c\) gồm \(a+b\) phần tử gồm đúng \(a\) phần tử bằng \(x\), đúng \(b\) phần tử bằng \(y\) thì tốc độ di chuyển là \(A[c_1] + A[c_1+c_2] + A[c_1+c_2+c_3] + … + A[c_1+c_2+c_3+...+c_(a+b)]\).

Yêu cầu: Hãy tìm ra một bộ số \(c\) như trên sao cho tốc độ di chuyển là lớn nhất có thể.

Dữ liệu: Nhập từ file KTIEPDAT.INP:

  • Dòng đầu tiền gồm năm số nguyên dương \(n,a,x,b,y\) (đảm bảo \(n ≤ 10^3\)\(a×x+b×y = n\)).
  • Dòng tiếp theo chứa \(n\) số nguyên dương \(A[1],A[2],… A[N]\), mỗi số cách nhau một khoảng trống. (\(1 ≤ A[i] ≤ 10^9\)).

Kết quả: Ghi ra file KTIEPDAT.OUT:

  • Một số nguyên duy nhất là tốc độ di chuyển lớn nhất có thể tìm được.

Scoring

  • 40% số test có \(n≤20\)
  • 40% số test có \(n≤100\)
  • 20% số test không giới hạn gì thêm

Test 1

Input
12 2 3 3 2
1 9 2 8 7 3 6 4 5 1 9 8
Output
36
Note

Họ đã chọn nhảy lần lượt các bước độ dài: \({2,2,3,2,3}\) đi qua các ô \({2,4,7,9,12}\). Tốc độ là \(9+8+6+5+8 = 36\) (là lớn nhất)

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: