35222023-02-28 16:53:13Tina0731Szemetessorcpp11Hibás válasz 17/100430ms38320 KiB
#include <iostream>
#include <bits/stdc++.h>

using namespace std;

/*
5 12
33 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
*/

int main()
{
    long long int n, k;
    cin>>n>>k;
    vector<pair<long long int, long long int>> szemet(k);
     vector<long long int> kapac(n);

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

     for(long long int i=0;i<k;i++)
        cin>>szemet.at(i).first>>szemet.at(i).second;

     /*for(int x:kapac)
        cout<<x<<" ";*/

     //cout<<endl;

     /*for(pair<int, int> x : szemet)
        cout<<x.first<<" "<<x.second<<endl;*/


    map<long long int, long long int> tarolo;
        //cout<<"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"<<endl;
        int moneymoney=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;
            moneymoney+=kapac.at(par.first)-tarolo.at(par.first);
            tarolo.at(par.first)=par.second;
        }

    }

    /*for(pair<int, int> elem:tarolo )
        cout<<elem.first<<" "<<elem.second<<endl;*/

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

    cout<<moneymoney;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1812 KiB
2Elfogadva3ms2056 KiB
subtask217/17
3Elfogadva3ms2264 KiB
4Elfogadva3ms2512 KiB
5Elfogadva3ms2764 KiB
6Elfogadva3ms2960 KiB
7Elfogadva3ms3476 KiB
8Elfogadva3ms3436 KiB
9Elfogadva3ms3364 KiB
10Elfogadva3ms3612 KiB
11Elfogadva3ms3588 KiB
subtask30/25
12Hibás válasz143ms9616 KiB
13Hibás válasz175ms9880 KiB
14Hibás válasz201ms9976 KiB
15Hibás válasz221ms10600 KiB
16Hibás válasz245ms11608 KiB
17Hibás válasz337ms24180 KiB
18Hibás válasz430ms38164 KiB
19Hibás válasz428ms38320 KiB
20Hibás válasz428ms38192 KiB
subtask40/20
21Elfogadva180ms11160 KiB
22Hibás válasz232ms16008 KiB
23Elfogadva187ms11336 KiB
24Hibás válasz221ms13376 KiB
25Elfogadva192ms11292 KiB
26Hibás válasz308ms21696 KiB
27Hibás válasz393ms28192 KiB
28Hibás válasz379ms28584 KiB
29Hibás válasz372ms28060 KiB
30Hibás válasz333ms27456 KiB
subtask50/38
31Elfogadva3ms4320 KiB
32Elfogadva3ms4308 KiB
33Elfogadva3ms4436 KiB
34Elfogadva3ms4532 KiB
35Hibás válasz17ms4872 KiB
36Hibás válasz195ms10548 KiB
37Hibás válasz381ms19916 KiB
38Hibás válasz372ms18484 KiB
39Hibás válasz379ms21732 KiB
40Hibás válasz388ms26420 KiB
41Hibás válasz393ms29152 KiB
42Hibás válasz389ms27592 KiB