【求助】样 例 全 过 , 评 测 全 挂
查看原帖
【求助】样 例 全 过 , 评 测 全 挂
316855
Gunpowder_OI楼主2020/10/15 22:26
#include <iostream>
#include <vector>
using namespace std;
struct node {
	int price, time;
};
vector<node> v;
int n, op, price, tim, money = 0;
void insert (int p, int t){
	node o;
	o.price = p;
	o.time = t;
	v.push_back (o);
	if (t - v[0].time > 45)v.erase (v.begin ());
	money += p;
}
void use (int m, int ec, int ty){
    if (v.size () == 0){
        money += m;
        return;
    }
	if (v[ec].price >= m && ty - v[ec].time <= 45){
		v.erase (v.begin ());
		return;
	}
	if (ec >= v.size () - 1){
		money += m;
		return;
	}
	use (m, ec + 1, ty);
}
int main (){
	cin >> n;
	for (int i = 0; i < n; i++){
		cin >> op >> price >> tim;
		if (op)use (price, 0, tim);
		else insert (price, tim);
	}
	cout << money;
	return 0;
}

全挂了不知道为啥

2020/10/15 22:26
加载中...