Rezultati

Up. imeNalogaJezikRezultatČas oddaje
sSrcem-2018 Priprava naloge C++ 0/100Napačen odgovor (WA) 19. apr '18 @ 20:01

Test Točke Porabljen spomin Porabljen čas Status
#1 0/11 3,938 MiB 0,198 s Napačen odgovor
Tvoj izhod:
​3082664073
<<<EOF>>>
Pravilen izhod:
​47120013852231
<<<EOF>>>
#2 0/11 4,078 MiB 0,216 s Napačen odgovor
Tvoj izhod:
​2165277609
<<<EOF>>>
Pravilen izhod:
​46934781048360
<<<EOF>>>
#3 0/11 4,090 MiB 0,234 s Napačen odgovor
Tvoj izhod:
​2241995483
<<<EOF>>>
Pravilen izhod:
​47218273002750
<<<EOF>>>
#4 0/11 4,082 MiB 0,222 s Napačen odgovor
Tvoj izhod:
​3636713873
<<<EOF>>>
Pravilen izhod:
​47098206909139
<<<EOF>>>
#5 0/11 4,086 MiB 0,206 s Napačen odgovor
Tvoj izhod:
​3812037749
<<<EOF>>>
Pravilen izhod:
​44833673137276
<<<EOF>>>
#6 0/11 4,086 MiB 0,200 s Napačen odgovor
Tvoj izhod:
​Tekma bo polom
<<<EOF>>>
Pravilen izhod:
​38422565125413
<<<EOF>>>
#7 11/11 3,199 MiB 0,000 s OK
#8 11/11 3,938 MiB 0,099 s OK
#9 12/12 3,141 MiB 0,000 s OK

Ocenjevani program (priprava_naloge(2).cpp):
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;


struct dogodek {
    unsigned int cas;
    unsigned int pomem;

};

bool sortByCas( dogodek a, dogodek b )
{
    if( a.cas != b.cas )
        return a.cas < b.cas;
    else
        return a.cas > b.cas;
}

vector<dogodek> dogodeki;
unsigned int kolk, maxCas;


unsigned int doStuff( unsigned int sum)
{
    unsigned int abc = 0, pomem = 0;

    for( unsigned int i = 0; i < kolk; i++)
    {
        abc += dogodeki[i].cas;
        if( abc > sum ) {
            break;
        }
        pomem += dogodeki[i].pomem;
    }
    return pomem;
}



int main()
{
    cin >> maxCas >>  kolk;

    int b;
    dogodek* a;
    unsigned int c, t;
    for( unsigned int i = 0; i < kolk; i++ )
    {
        cin >> t >> c;
        a = new dogodek();
        a->cas = t;
        a->pomem = c;
        dogodeki.push_back(*a);
        delete a;
    }
    
    std::sort( dogodeki.begin(), dogodeki.end(), &sortByCas);

    unsigned int sum = 0;
    for( unsigned int i = 0; i < kolk; i++)
    {
        sum += dogodeki[i].cas;
    }
    if( sum < maxCas )
        cout << "Tekma bo polom" << endl;
    else
    {
        sum -= maxCas;
        cout << doStuff(sum) << endl;
    }

    return 0;
}