Gửi bài giải

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

Nguồn bài:
https://codeforces.com/
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Có N người sắp hàng mua vé dự buổi hoà nhạc. Ta đánh số họ từ 1 đến N theo thứ tự đứng trong hàng. Mỗi người cần mua một vé, song người bán vé được phép bán cho mỗi người tối đa hai vé. Vì thế, một số người có thể rời hàng và nhờ người đứng trước mình mua hộ vé. Biết ti là thời gian cần thiết để người i mua xong vé cho mình. Nếu người i + 1 rời khỏi hàng và nhờ người i mua hộ vé thì thời gian để người thứ i mua được vé cho cả hai người là ri.

Yêu cầu: Xác định xem những người nào cần rời khỏi hàng và nhờ người đứng trước mua hộ vé để tổng thời gian phục vụ bán vé là nhỏ nhất.

Input

  • Dòng đầu tiên chứa số N ~(1 \le N \le 10^5)~.
  • Dòng thứ 2 ghi N số nguyên dương t1, t2, ..., tN. ~(1 \le t_i \le 30000)~
  • Dòng thứ ba ghi N - 1 số nguyên dương ~r_1, r_2, ..., r_{N - 1}. (1 \le r_i \le 30000)~

Output

  • Gồm một dòng duy nhất là đáp án cần tìm

Examples

Input

5
2 5 7 8 4
4 9 10 10

Output

18

Input

4
5 7 8 4
50 50 50

Output

24

Bình luận

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



  • 3
    LongNai  đã bình luận lúc 9, Tháng 10, 2024, 10:49 chỉnh sửa

    HINT:

    ChO aI ChƯa lÀm ĐưỢC hOặC ĐaNG BÍ ahihihi :))

    Đầu tiên ta đặt 2 bài toán cơ sở là:

    Bài toán cơ sở 1: $$dp[0] = t[0]$$ Bởi vì người thứ nhất không thể nhờ ai mua dùm cả, thế nên bài toán cơ sở đầu tiên sẽ bằng thời gian người thứ nhất mua vé

    Bài toán cơ sở 2: $$dp[1] = min(t[0] + t[1], r[0])$$ Vì sao mình phải lấy min của tổng thời gian 2 người mua vé đầu tiên và thời gian để người thứ i mua vé cho người thứ i + 1 là r[i]. Vì để lấy thời gian phục vụ bán vé nhỏ nhất (nếu như t[0] + t[1] < r[0] thì lấy r[0] và ngược lại)

    Và cuối cùng công thức truy hồi của bài me vúa này là (i bắt đầu từ 2 vì ta lấy và tính 2 thời gian trước đó rồi hihi): $$dp[i] = min(dp[i - 2] + r[i - 1], dp[i - 1] + t[i])$$ Còn vì sao như vậy thì nháp ra giấy xong ngẫm lại là ra à ahihi

    Kem đánh răng P/S: VÀ vì cái hint này là đc thầy Sơn giảng lại cho mình và mình hiểu lại theo cách hiểu của mình và viết lên đây nếu ai thấy sai sai chỗ nào thí cứ comment phía dưới cho mình biết cái nhé và cuối cùng Like anh Subcribe for my channel!


    • -1
      abcnickname  đã bình luận lúc 10, Tháng 10, 2024, 12:24

      who ask u >:)


    • 3
      nam0610  đã bình luận lúc 9, Tháng 10, 2024, 12:41

      lam nhu t de hieu hon


  • 1
    nam0610  đã bình luận lúc 9, Tháng 10, 2024, 8:35 chỉnh sửa

    Tin nhắn này đã bị xóa


  • -2
    abcnickname  đã bình luận lúc 9, Tháng 10, 2024, 8:10

    skibidibidi dop dop dop dop ya ya