Detalii evaluare #50434220

Rezumat problemă

#1676 Elmer

În antrenamentul său intens pentru prinderea lui Daffy Duck, celebrul vânător Elmer Fudd a început să vâneze rațe în orașul său preferat, Craiova. Se știe că există N rațe reprezentate prin puncte în planul de coordonate xOy, având coordonatele (x,y) și M ziduri sub forma unor segmente verticale având un capăt pe axa Ox și o anumită înălţime fiecare.

Vânătorul Elmer dorește să împuște cât mai multe rațe. El poate fi poziționat în orice punct de abscisă număr natural nenul, pe axa Ox. O rață poate fi ochită de vânător dacă zidul nu blochează glonțul vânătorului, adică segmentul imaginar delimitat de rață și de vânător nu se intersectează cu nici un zid.

Să se afle numărul maxim de rațe care pot fi ochite de vânătorul Elmer.

ONI 2016, clasa a X-a

Detalii

Problema Elmer Operații I/O elmer.in/elmer.out
Limita timp 0.3 secunde Limita memorie Total: 32 MB / Stivă 8 MB
Id soluție #50434220 Utilizator busoi radulescu stefan (stefan012)
Fișier elmer.cpp Dimensiune 2.25 KB
Data încărcării 09 Aprilie 2024, 14:52 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

elmer.cpp: In function 'int main()':
elmer.cpp:52:39: warning: narrowing conversion of 'p2' from 'float' to 'int' inside { } [-Wnarrowing]
                 obst.push_back({p1,p2});

                                       ^
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64,
                 from elmer.cpp:1:
/usr/include/c++/4.8/bits/stl_algo.h: In instantiation of '_RandomAccessIterator std::__unguarded_partition(_RandomAccessIterator, _RandomAccessIterator, const _Tp&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<interv*, std::vector<interv> >; _Tp = interv]':
/usr/include/c++/4.8/bits/stl_algo.h:2283:70:   required from '_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<interv*, std::vector<interv> >]'
/usr/include/c++/4.8/bits/stl_algo.h:2315:54:   required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<interv*, std::vector<interv> >; _Size = int]'
/usr/include/c++/4.8/bits/stl_algo.h:5461:36:   required from 'void std::sort(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<interv*, std::vector<interv> >]'
elmer.cpp:64:37:   required from here
/usr/include/c++/4.8/bits/stl_algo.h:2245:19: error: passing 'const interv' as 'this' argument of 'bool interv::operator<(interv)' discards qualifiers [-fpermissive]
    while (__pivot < *__last)
                   ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Elmer face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.