样例全过但全WA,求调
查看原帖
样例全过但全WA,求调
767561
Ascnbeta楼主2024/10/20 17:06

rt,本蒟蒻的思路是把获得的优惠券存到一个动态数组里,如果能用就用,并 erase 掉,否则去遍历下一个,但是WA了。

#include <bits/stdc++.h>
#define int long long
#define fi first
#define se second
using namespace std;
vector<pair<int,int>> v;
int ans;
int n;
signed main () {
    cin >> n;
    for (int i = 1; i <= n; i++) {
        int op;
        cin >> op;
        if (op == 0) {
            int x,y;
            cin >> x >> y;
            v.push_back(make_pair(x,y));
            ans += x;
        }
        if (op == 1) {
            int x,y;
            cin >> x >> y;
            bool f = false;
            for (int j = 0; j < v.size(); j++) {
                if (v[j].fi >= x && y - v[j].se <= 45) {
                    f = true;
                    v.erase(v.begin()+j);
                    break;
                }else if (y - v[j].se > 45) break;
            }
            if (!f) ans += x;
        }
    }
    cout << ans << endl;
    return 0;
}
2024/10/20 17:06
加载中...