50分求大佬帮看,感觉没什么问题
查看原帖
50分求大佬帮看,感觉没什么问题
1189413
PURE_LOVE楼主2024/11/28 11:56
#include<bits/stdc++.h>
using namespace std;
int check = 0;
int main()
{
	int n = 0, book = 0;
	cin >> n;
	int m = n;
	int t = 0, temp = 0, temp1 = 0;
	cin >> t >> book;
	list<int>arr;
	while (n--)
	{
		scanf("%d", &temp);
		arr.push_back(temp);
	}
	arr.sort();
	while (t--)
	{
		scanf("%d", &temp);
		if (temp == 1)
		{
			scanf("%d", &temp1);
			m = arr.size();
			check += temp1;
			while (m--)
			{
				int x = arr.back();
				if (x + check <= book)
				{
					break;
				}
				arr.pop_back();
			}
		}
		else if (temp == 2)
		{
			scanf("%d", &temp1);
			m = arr.size();
			check -= temp1;
			while (m--)
			{
				int x = arr.front();
				if (x + check >= -book)
				{
					break;
				}
				arr.pop_front();
			}
		}
		else
		{
			cout << arr.size() << endl;
		}
	}
}
2024/11/28 11:56
加载中...