Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution

    Đề bài: [Giải thuật] Tích vô hướng nhỏ nhất

    Cho hai dãy số nguyên cùng độ dài nnn: a1,…,ana_1, \dots, a_na1​,…,an​ và b1,…,bnb_1, \dots, b_nb1​,…,bn​. Bạn được phép hoán vị tùy ý các phần tử trong mỗi dãy (sắp xếp lại theo thứ tự bất kỳ).

    Sau khi sắp xếp lại, giá trị thu được là ∑i=1nai⋅bi\sum_{i=1}^{n} a_i \cdot b_i∑i=1n​ai​⋅bi​. Hãy tìm giá trị nhỏ nhất có thể của tổng này.

    Theo bất đẳng thức sắp xếp lại (rearrangement inequality), tổng nhỏ nhất đạt được khi một dãy sắp tăng dần và dãy kia sắp giảm dần.

    • Định dạng đầu vào:

      Dòng đầu chứa số nguyên nnn. Dòng thứ hai chứa nnn số nguyên là dãy aaa. Dòng thứ ba chứa nnn số nguyên là dãy bbb.

    • Ràng buộc đầu vào:

      1≤n≤1051 \le n \le 10^51≤n≤105, −104≤ai,bi≤104-10^4 \le a_i, b_i \le 10^4−104≤ai​,bi​≤104.

    • Định dạng đầu ra:

      In ra một số nguyên là tổng tích nhỏ nhất.

    Ví dụ:

    Đầu vào:

    3
    1 2 3
    4 5 6
    

    Đầu ra:

    28

    Giải thích:

    a tăng (1,2,3), b giảm (6,5,4): 1*6+2*5+3*4 = 28 — nhỏ nhất.

    Chủ đề

    🧮 Cấu trúc dữ liệu & Giải thuậtGiải thuật: Tham lamGreedyTất cả môn học

    Đang tải editor...