社区讨论

0分求助

P5661[CSP-J 2019] 公交换乘参与者 3已保存回复 7

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
7 条
当前快照
1 份
快照标识符
@lpo4vmpj
此快照首次捕获于
2023/12/02 22:13
2 年前
此快照最后确认于
2023/12/03 09:25
2 年前
查看原帖
蒟蒻用了老师教的代码,结果0分,还特意下了一个数据,运行之后也没问题,神犇看下有什么问题吗?
CPP
#include<iostream>
using namespace std;

struct ticket
{
	int price,time;
	bool used;
} a[100005];

int main()
{
	int n,cnt,ans;
	cin >> n;
	int pos = 1;
	for (int i = 1;i <= n;i++)
	{
		int op,price,time;
		cin >> op >> price >> time;
		if (!op)
		{
			ans += price;
			cnt++;
			a[cnt].price = price;
			a[cnt].time = time + 45;
		}
		else
		{
			bool flag = false;
			for (int j = pos;j <= cnt;j++)
			{
				if (price <= a[j].price && time <= a[j].time && !a[j].used)
				{
					a[j].used = true;
					flag = true;
					break;
				}
				if (time > a[j].time)
				{
					pos = j + 1;
				}
			}
			if (!flag)
			{
				ans += price;
			}
		}
	}
	cout << ans << endl;
	return 0;
}
悬赏关注1月~

回复

7 条回复,欢迎继续交流。

正在加载回复...