95002024-02-22 12:23:09zeytonxMI bróker (50 pont)cpp17Időlimit túllépés 6/501.103s116872 KiB
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define endl "\n"
#define pll pair<ll,ll>
#define vll vector<ll>
#define mll map<ll,ll>
#define fs first
#define sc second

const ll MOD = 1e9+7;

void solve()
{
	ll n, q;
	cin >> n >> q;
	vector<ll> p(n);
	
	map<ll, vll> lw, bg;

	for(ll i = 0; i < n; i++)
	{
		cin >> p[i];
		for(ll j = p[i]; j <= 500; j++)
			lw[j].push_back(i);
		for(ll j = 1; j <= p[i]; j++)
			bg[j].push_back(i);
	}

	vector<pll> qr(q);
	for(auto &i : qr)
		cin >> i.fs >> i.sc;
	
	for(auto i : qr)
	{
		ll ans = 0;
		ll i1 = 0, i2 = 0;

		ll bgs = bg[i.sc].size(), lws = lw[i.fs].size();

		while(true)
		{
			ans -= p[lw[i.fs][i1]];
			i1++;
			while(i2 < bgs && lw[i.fs][i1-1] >= bg[i.sc][i2])
				i2++;
			if(i2 == bgs)
				break;
			ans += p[bg[i.sc][i2]];
			i2++;
			while(i1 < lws && lw[i.fs][i1] <= bg[i.sc][i2-1])
				i1++;
			if(i1 == lws)
				break;
		}
		
		cout << ans << "\n";
	}
	cout << endl;
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    ll t = 1;
    //cin >> t;
    while(t--)
        solve();
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/50
1Elfogadva0/03ms2236 KiB
2Időlimit túllépés0/01.103s49720 KiB
3Futási hiba0/13ms2684 KiB
4Futási hiba0/13ms3064 KiB
5Elfogadva2/235ms14404 KiB
6Elfogadva2/2307ms106940 KiB
7Elfogadva2/2308ms109176 KiB
8Futási hiba0/1247ms114228 KiB
9Futási hiba0/1284ms114252 KiB
10Időlimit túllépés0/21.07s59356 KiB
11Futási hiba0/2361ms116216 KiB
12Futási hiba0/2368ms116632 KiB
13Futási hiba0/2391ms116868 KiB
14Futási hiba0/2360ms116872 KiB
15Időlimit túllépés0/31.05s57644 KiB
16Időlimit túllépés0/31.074s58228 KiB
17Időlimit túllépés0/31.085s58448 KiB
18Időlimit túllépés0/31.062s58268 KiB
19Időlimit túllépés0/31.049s58168 KiB
20Időlimit túllépés0/31.064s59220 KiB
21Időlimit túllépés0/31.082s58928 KiB
22Időlimit túllépés0/31.072s59612 KiB
23Időlimit túllépés0/31.059s59680 KiB
24Időlimit túllépés0/31.082s58868 KiB