37022023-03-02 11:50:21AncsaSzemetessorcpp11Elfogadva 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;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1812 KiB
2Elfogadva3ms2056 KiB
subtask217/17
3Elfogadva3ms2300 KiB
4Elfogadva2ms2516 KiB
5Elfogadva2ms2564 KiB
6Elfogadva2ms2528 KiB
7Elfogadva2ms2776 KiB
8Elfogadva2ms2740 KiB
9Elfogadva3ms2984 KiB
10Elfogadva2ms3228 KiB
11Elfogadva2ms3276 KiB
subtask325/25
12Elfogadva138ms9572 KiB
13Elfogadva174ms9660 KiB
14Elfogadva201ms10020 KiB
15Elfogadva221ms10512 KiB
16Elfogadva244ms11564 KiB
17Elfogadva328ms23560 KiB
18Elfogadva414ms36768 KiB
19Elfogadva414ms36712 KiB
20Elfogadva414ms37012 KiB
subtask420/20
21Elfogadva180ms11456 KiB
22Elfogadva228ms15916 KiB
23Elfogadva182ms11564 KiB
24Elfogadva219ms13808 KiB
25Elfogadva189ms11668 KiB
26Elfogadva300ms21304 KiB
27Elfogadva372ms27128 KiB
28Elfogadva377ms27776 KiB
29Elfogadva361ms27116 KiB
30Elfogadva338ms26532 KiB
subtask538/38
31Elfogadva3ms4792 KiB
32Elfogadva2ms4880 KiB
33Elfogadva3ms5028 KiB
34Elfogadva3ms5104 KiB
35Elfogadva17ms5356 KiB
36Elfogadva195ms11332 KiB
37Elfogadva372ms19004 KiB
38Elfogadva368ms17688 KiB
39Elfogadva375ms20916 KiB
40Elfogadva377ms25520 KiB
41Elfogadva407ms28244 KiB
42Elfogadva384ms26664 KiB