下载并通过了第一个数据点,但是全 WA 求调
  • 板块P2073 送花
  • 楼主wbh20090611
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/11/24 11:37
  • 上次更新2024/11/24 14:11:33
查看原帖
下载并通过了第一个数据点,但是全 WA 求调
573963
wbh20090611楼主2024/11/24 11:37

sample.in

1 1 1
1 2 5
2
1 3 3
3
1 5 2
-1

sample.out

8 5

Code:

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N = 1e6 + 10;
int op, t, w, c, f[N];
set <int> s;
signed main()
{
//	ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
	while(cin >> op)
	{
		if (op == -1)
			break;
		switch(op)
		{
			case 1:
			{
				cin >> w >> c;
				if (f[c] == 0)
				{
					s.insert(c);
					f[c] = w;
				}
				break;
			}
			case 2:
			{
				if (s.size())
				{
					f[*(--s.end())] = 0;
					s.erase(--s.end());
				}
				break;
			}
			default:
			{
				if (s.size())
				{
					f[*(s.begin())] = 0;
					s.erase(s.begin());
				}
				break;
			}
		}
	}
	int ans = 0, cnt;
	for (int i : s)
		ans += f[i], cnt += i;
	cout << ans << " " << cnt << endl;
	return 0;
}
2024/11/24 11:37
加载中...