37022023-03-02 11:50:21AncsaSzemetessorcpp11Accepted 100/100414ms37012 KiB
#include <bits/stdc++.h>

/*
5 12
66 73 69 79 78
2 50
3 69
0 1
0 12
2 20
0 23
1 44
1 30
4 12
4 3
4 63
0 10

kimenet: 170
*/



using namespace std;

int main()
{
    long long int kszam, napsz;
    cin>>kszam>>napsz;
    vector<pair<long long int, long long int>> szemet(napsz);
    vector<int> kapac(kszam);

    for(long long int i=0;i<kszam;i++)
        cin>>kapac.at(i);

    for(long long int i=0;i<napsz;i++)
    {
        cin>>szemet.at(i).first>>szemet.at(i).second;
    }
/*
    for(int x:kapac)
        cout<<x<<" ";

    cout<<endl;

    for(pair<long long int,long long int> par: szemet)
        cout<<par.first<<" "<<par.second<<endl;
*/
    map<long long int,long long int> tarolo;

    long long int fizetni=0;
    for(pair<long long int,long long int> par: szemet)
    {
        tarolo[par.first]+=par.second;
        if (tarolo[par.first]>kapac.at(par.first))
        {
           tarolo[par.first]-=par.second;
           fizetni+=kapac.at(par.first)-tarolo.at(par.first);
           tarolo.at(par.first)=par.second;
        }

    }
    /*
    cout<<"A map tartalma: \n\n";
    for(pair<int,int> elem:tarolo)
        cout<<elem.first<<" "<<elem.second<<endl;
*/

    for(pair<long long int,long long int> elem:tarolo)
    {
        if(elem.second>0)
            fizetni+=kapac.at(elem.first)-tarolo.at(elem.first);
    }

    cout<<fizetni;


    //cout << "Hello world!" << endl;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted3ms1812 KiB
2Accepted3ms2056 KiB
subtask217/17
3Accepted3ms2300 KiB
4Accepted2ms2516 KiB
5Accepted2ms2564 KiB
6Accepted2ms2528 KiB
7Accepted2ms2776 KiB
8Accepted2ms2740 KiB
9Accepted3ms2984 KiB
10Accepted2ms3228 KiB
11Accepted2ms3276 KiB
subtask325/25
12Accepted138ms9572 KiB
13Accepted174ms9660 KiB
14Accepted201ms10020 KiB
15Accepted221ms10512 KiB
16Accepted244ms11564 KiB
17Accepted328ms23560 KiB
18Accepted414ms36768 KiB
19Accepted414ms36712 KiB
20Accepted414ms37012 KiB
subtask420/20
21Accepted180ms11456 KiB
22Accepted228ms15916 KiB
23Accepted182ms11564 KiB
24Accepted219ms13808 KiB
25Accepted189ms11668 KiB
26Accepted300ms21304 KiB
27Accepted372ms27128 KiB
28Accepted377ms27776 KiB
29Accepted361ms27116 KiB
30Accepted338ms26532 KiB
subtask538/38
31Accepted3ms4792 KiB
32Accepted2ms4880 KiB
33Accepted3ms5028 KiB
34Accepted3ms5104 KiB
35Accepted17ms5356 KiB
36Accepted195ms11332 KiB
37Accepted372ms19004 KiB
38Accepted368ms17688 KiB
39Accepted375ms20916 KiB
40Accepted377ms25520 KiB
41Accepted407ms28244 KiB
42Accepted384ms26664 KiB