#4413
parcare2
În cel mai recent eveniment al companiei Tesla, Paul Musk a anunțat un nou produs inovativ: parcarea autonomă. Fiind cunoscut pentru lansările produselor incomplete, nici parcarea nu este completă, fiind nevoie de o automatizare pentru a atribui câte un loc mașinilor care vor să folosească parcarea. Parcarea este formată din N
locuri, numerotate de la 1
la N
, și este deschisă timp de T
secunde, începând cu secunda 1
. Pe parcursul zilei, sosesc M
mașini care vor să folosească parcarea, pentru fiecare dintre acestea știindu-se timpul de sosire s[i]
și timpul de plecare p[i]
. Mașinile vin în ordinea timpului de sosire s[i]
și ocupă locul de parcare în intervalul de timp [ s[i], p[i] ]
. Pentru fiecare dintre acestea, trebuie să afișați un loc liber de parcare (dacă sunt mai multe, se poate afișa oricare) în care aceasta se poate așeza sau -1
dacă parcarea este plină în momentul venirii mașinii. Dacă o mașină nu are loc în parcare la timpul de sosire, aceasta nu va mai intra în parcare la niciun timp viitor. La final, Paul este interesat de mașinile care mai sunt rămase în parcare la închiderea parcării, de aceea vă cere să afișați configurația parcării la timpul T
.
OJI 2023, clasele XI-XII
Problema | parcare2 | Operații I/O |
![]() parcare.in /parcare.out
|
---|---|---|---|
Limita timp | 0.25 secunde | Limita memorie |
Total: 256 MB
/
Stivă 64 MB
|
Id soluție | #56655031 | Utilizator | |
Fișier | parcare2.cpp | Dimensiune | 1.56 KB |
Data încărcării | 01 Martie 2025, 09:49 | Scor / rezultat | Eroare de compilare |
parcare2.cpp:23:10: error: 'std::set<int> index' redeclared as different kind of symbol set<int> index; ^ In file included from /usr/include/c++/4.8/cstring:42:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:48, from parcare2.cpp:1: /usr/include/string.h:482:1: error: previous declaration of 'const char* index(const char*, int)' index (const char *__s, int __c) __THROW ^ parcare2.cpp: In function 'int main()': parcare2.cpp:37:14: error: 'index' does not have class type index.insert(i); ^ parcare2.cpp:44:22: error: 'index' does not have class type if(!index.empty()) ^ parcare2.cpp:46:45: error: 'index' does not have class type s.insert({masina.ind, *index.begin()}); ^ parcare2.cpp:46:54: error: no matching function for call to 'std::set<std::pair<int, int> >::insert(<brace-enclosed initializer list>)' s.insert({masina.ind, *index.begin()}); ^ parcare2.cpp:46:54: note: candidates are: In file included from /usr/include/c++/4.8/set:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from parcare2.cpp:1: /usr/include/c++/4.8/bits/stl_set.h:460:7: note: std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = std::pair<int, int>; _Compare = std::less<std::pair<int, int> >; _Alloc = std::allocator<std::pair<int, int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<int, int>] insert(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:460:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type& {aka const std::pair<int, int>&}' /usr/include/c++/4.8/bits/stl_set.h:469:7: note: std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<int, int>; _Compare = std::less<std::pair<int, int> >; _Alloc = std::allocator<std::pair<int, int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<int, int>] insert(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:469:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::set<std::pair<int, int> >::value_type&& {aka std::pair<int, int>&&}' /usr/include/c++/4.8/bits/stl_set.h:497:7: note: std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, const value_type&) [with _Key = std::pair<int, int>; _Compare = std::less<std::pair<int, int> >; _Alloc = std::allocator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<int, int>] insert(const_iterator __position, const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:497:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/4.8/bits/stl_set.h:502:7: note: std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<int, int>; _Compare = std::less<std::pair<int, int> >; _Alloc = std::allocator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<int, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<int, int>] insert(const_iterator __position, value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:502:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/4.8/bits/stl_set.h:517:2: note: template<class _InputIterator> void std::set<_Key, _Compare, _Alloc>::insert(_InputIterator, _InputIterator) [with _InputIterator = _InputIterator; _Key = std::pair<int, int>; _Compare = std::less<std::pair<int, int> >; _Alloc = std::allocator<std::pair<int, int> >] insert(_InputIterator __first, _InputIterator __last) ^ /usr/include/c++/4.8/bits/stl_set.h:517:2: note: template argument deduction/substitution failed: parcare2.cpp:46:54: note: candidate expects 2 arguments, 1 provided s.insert({masina.ind, *index.begin()}); ^ In file included from /usr/include/c++/4.8/set:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from parcare2.cpp:1: /usr/include/c++/4.8/bits/stl_set.h:529:7: note: void std::set<_Key, _Compare, _Alloc>::insert(std::initializer_list<_Tp>) [with _Key = std::pair<int, int>; _Compare = std::less<std::pair<int, int> >; _Alloc = std::allocator<std::pair<int, int> >] insert(initializer_list<value_type> __l) ^ /usr/include/c++/4.8/bits/stl_set.h:529:7: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::initializer_list<std::pair<int, int> >' parcare2.cpp:47:31: error: 'index' does not have class type cout << *index.begin() << '\n'; ^ parcare2.cpp:48:22: error: 'index' does not have class type index.erase(index.begin()); ^ parcare2.cpp:48:34: error: 'index' does not have class type index.erase(index.begin()); ^ parcare2.cpp:61:22: error: 'index' does not have class type index.insert(loc); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema parcare2 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.