按题意模拟即可

注意下clccle和rqy的难度边界,记得开long long

#include <bits/stdc++.h>
using namespace std;
#define ll long long int
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	ll n, t;
	ll a, b;
	ll ca = 0;
	ll cb = 0;
	ll str[100010][5];
	ll ta, tb;
	cin >> n >> t >> a >> b;
	ta = t;
	tb = t;
	for (ll i = 0; i < n; i++)
		cin >> str[i][0];
	for (ll i = 0; i < n; i++)
		cin >> str[i][1];
	for (ll i = 0; i < n; i++)
	{
		if (str[i][1] < a)
		{
			if (str[i][0] <= ta)
			{
				ta -= str[i][0];
				ca++;
			}
		}
		if (str[i][1] >= b)
		{
			if (2 * str[i][0] <= tb)
			{
				tb -= 2 * str[i][0];
				cb++;
			}
		}
		else if (str[i][1] < b)
		{
			if (str[i][0] <= tb)
			{
				tb -= str[i][0];
				cb++;
			}
		}
	}
	cout << ca << " " << cb;
	return 0;
}