Free Contest 112 - SHOPPING

Xem dạng PDF

Gửi bài giải

Điểm: 0,50 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Lưu ý: các bạn không nhập, xuất dữ liệu bằng file kể cả khi đề bài có yêu cầu. Đọc, ghi dữ liệu được thực hiện ở stdin và stdout.


Bình luận

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



  • 0
    minhkochamhoc  đã bình luận lúc 28, Tháng 1, 2026, 15:39 chỉnh sửa

    nếu bạn bị wa thì có thể do :

    đề bài ko bắt buộc phải sử dụng lựa chọn giảm giá nên có thể tồn tại 1 cặp a[i] + b[i] mà có kết quả còn nhỏ hơn việc sài mã giảm giá vì vậy ta cần so sánh thêm 1 lựa chọn là lấy phần tử nhỏ nhất mảng a + phần tử nhỏ nhất mảng b nữa mới cho ra kết quả đúng

    code mẫu :

    #include <bits/stdc++.h>
    #define NMAX 100005
    using namespace std;
    int a , b , m;
    int FaceMask[NMAX] , Bottle[NMAX];
    int ans = INT_MAX;
    
    void process()
    {
       cin>> a >> b >> m;
    
       for(int i = 1 ; i <= a ; i++)  cin>> FaceMask[i];
    
       for(int i = 1 ; i <= b ; i++)  cin>> Bottle[i];
    
       for(int i = 1 ; i <= m ; i++)
       {
           int GetA , GetB , discount;
           cin>> GetA >> GetB >> discount;
           ans = min(ans , FaceMask[GetA] + Bottle[GetB] - discount);
       }
    
       int MinA = INT_MAX , MinB = INT_MAX;
    
       for(int i = 1 ; i <= a ; i++) MinA = min(MinA , FaceMask[i]);
    
       for(int i = 1 ; i <= b ; i++) MinB = min(MinB , Bottle[i]);
    
       ans = min(ans , MinA + MinB);
    
       cout<< ans ;
    }
    int main()
    {
       ios_base::sync_with_stdio(0);
       cin.tie(nullptr);
       cout.tie(nullptr);
       process();
       return 0;
    }