#145
Natasha a descoperit un nou joc pe calculator. Pe un suport se află N biluțe pe care este scris câte un număr si . Jocul constă în alegerea unei biluțe, biluță care se va ridica de pe suport și va pluti în aer pentru si secunde, apoi se va așeza din nou pe poziția ei în suport. În momentul în care o biluță atinge suportul, prima biluță bst din stânga ei și prima biluță bdr din dreapta ei (care nu s-au așezat pe suport în același moment de timp) se vor ridica în aer, fiecare plutind pentru sst , respectiv sdr secunde, după care se vor reașeza în suport, fiecare pe poziția ei. Această mișcare a biluțelor continuă până când Natasha se plictisește și închide calculatorul. Dar asta nu e tot. În timp ce Natasha urmărește mișcarea biluțelor, ea trebuie să răspundă la M întrebări de forma: “Este biluța bk la momentul de timp tk pe suport sau în aer?”.
Pentru fiecare din cele M întrebări, răspundeți cu 1 dacă biluța b este pe suport, sau cu 0 dacă biluța este în aer.
Grigore Moisil 2013
| Problema | bilute | Operații I/O |
bilute.in/bilute.out
|
|---|---|---|---|
| Limita timp | 1.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #58794750 | Utilizator | |
| Fișier | bilute.cpp | Dimensiune | 5.41 KB |
| Data încărcării | 09 August 2025, 23:47 | Scor/rezultat | Eroare de compilare |
bilute.cpp: In function 'int main()': bilute.cpp:30:5: error: 'ios_base' has not been declared ios_base::sync_with_stdio(false); ^ bilute.cpp:31:5: error: 'cin' was not declared in this scope cin.tie(NULL); ^ bilute.cpp:31:5: note: suggested alternative: In file included from bilute.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: 'std::cin' extern istream cin; /// Linked to standard input ^ bilute.cpp:32:5: error: 'cout' was not declared in this scope cout.tie(NULL); ^ bilute.cpp:32:5: note: suggested alternative: In file included from bilute.cpp:1:0: /usr/include/c++/4.8/iostream:61:18: note: 'std::cout' extern ostream cout; /// Linked to standard output ^ bilute.cpp:34:5: error: 'ifstream' was not declared in this scope ifstream fin("bilute.in"); ^ bilute.cpp:34:5: note: suggested alternative: In file included from /usr/include/c++/4.8/ios:38:0, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from bilute.cpp:1: /usr/include/c++/4.8/iosfwd:157:34: note: 'std::ifstream' typedef basic_ifstream<char> ifstream; ^ bilute.cpp:34:14: error: expected ';' before 'fin' ifstream fin("bilute.in"); ^ bilute.cpp:35:5: error: 'ofstream' was not declared in this scope ofstream fout("bilute.out"); ^ bilute.cpp:35:5: note: suggested alternative: In file included from /usr/include/c++/4.8/ios:38:0, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from bilute.cpp:1: /usr/include/c++/4.8/iosfwd:160:34: note: 'std::ofstream' typedef basic_ofstream<char> ofstream; ^ bilute.cpp:35:14: error: expected ';' before 'fout' ofstream fout("bilute.out"); ^ bilute.cpp:38:5: error: 'fin' was not declared in this scope fin >> n >> m >> p; ^ bilute.cpp:40:5: error: 'vector' was not declared in this scope vector<int> s(n + 1); ^ bilute.cpp:40:5: note: suggested alternative: In file included from /usr/include/c++/4.8/vector:64:0, from bilute.cpp:3: /usr/include/c++/4.8/bits/stl_vector.h:210:11: note: 'std::vector' class vector : protected _Vector_base<_Tp, _Alloc> ^ bilute.cpp:40:12: error: expected primary-expression before 'int' vector<int> s(n + 1); ^ bilute.cpp:40:12: error: expected ';' before 'int' bilute.cpp:42:16: error: 's' was not declared in this scope fin >> s[i]; ^ bilute.cpp:46:5: error: 'map' was not declared in this scope map<int, vector<Query>> queries_by_time; ^ bilute.cpp:46:5: note: suggested alternative: In file included from /usr/include/c++/4.8/map:61:0, from bilute.cpp:7: /usr/include/c++/4.8/bits/stl_map.h:96:11: note: 'std::map' class map ^ bilute.cpp:46:9: error: expected primary-expression before 'int' map<int, vector<Query>> queries_by_time; ^ bilute.cpp:46:9: error: expected ';' before 'int' bilute.cpp:50:9: error: 'queries_by_time' was not declared in this scope queries_by_time[tk].push_back({bk, i}); ^ bilute.cpp:53:12: error: expected primary-expression before 'int' vector<int> answers(m); ^ bilute.cpp:53:12: error: expected ';' before 'int' bilute.cpp:54:27: error: 'queries_by_time' was not declared in this scope auto query_iterator = queries_by_time.begin(); ^ bilute.cpp:57:5: error: 'priority_queue' was not declared in this scope priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:57:5: note: suggested alternative: In file included from /usr/include/c++/4.8/queue:64:0, from bilute.cpp:4: /usr/include/c++/4.8/bits/stl_queue.h:367:11: note: 'std::priority_queue' class priority_queue ^ bilute.cpp:57:25: error: expected primary-expression before ',' token priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:57:39: error: expected primary-expression before '>' token priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:57:40: error: expected primary-expression before ',' token priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:57:42: error: 'greater' was not declared in this scope priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:57:42: note: suggested alternative: In file included from /usr/include/c++/4.8/string:48:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from bilute.cpp:1: /usr/include/c++/4.8/bits/stl_function.h:222:12: note: 'std::greater' struct greater : public binary_function<_Tp, _Tp, bool> ^ bilute.cpp:57:55: error: expected primary-expression before '>>' token priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:57:58: error: 'events' was not declared in this scope priority_queue<Event, vector<Event>, greater<Event>> events; ^ bilute.cpp:60:5: error: 'set' was not declared in this scope set<int> on_stand; ^ bilute.cpp:60:5: note: suggested alternative: In file included from /usr/include/c++/4.8/set:61:0, from bilute.cpp:5: /usr/include/c++/4.8/bits/stl_set.h:90:11: note: 'std::set' class set ^ bilute.cpp:60:9: error: expected primary-expression before 'int' set<int> on_stand; ^ bilute.cpp:60:9: error: expected ';' before 'int' bilute.cpp:62:9: error: 'on_stand' was not declared in this scope on_stand.insert(i); ^ bilute.cpp:67:5: error: 'on_stand' was not declared in this scope on_stand.erase(p); ^ bilute.cpp:75:64: error: 'min' was not declared in this scope int current_time = min(next_event_time, next_query_time); ^ bilute.cpp:75:64: note: suggested alternative: In file included from /usr/include/c++/4.8/algorithm:62:0, from bilute.cpp:6: /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: 'std::min' min(initializer_list<_Tp> __l, _Compare __comp) ^ bilute.cpp:80:17: error: 'answers' was not declared in this scope answers[q.original_index] = on_stand.count(q.ball_index); ^ bilute.cpp:89:16: error: expected primary-expression before 'int' vector<int> balls_landing_now; ^ bilute.cpp:89:16: error: expected ';' before 'int' bilute.cpp:91:13: error: 'balls_landing_now' was not declared in this scope balls_landing_now.push_back(events.top().ball_index); ^ bilute.cpp:94:14: error: 'balls_landing_now' was not declared in this scope sort(balls_landing_now.begin(), balls_landing_now.end()); ^ bilute.cpp:94:64: error: 'sort' was not declared in this scope sort(balls_landing_now.begin(), balls_landing_now.end()); ^ bilute.cpp:94:64: note: suggested alternative: In file included from /usr/include/c++/4.8/algorithm:62:0, from bilute.cpp:6: /usr/include/c++/4.8/bits/stl_algo.h:5483:5: note: 'std::sort' sort(_RandomAccessIterator __first, _RandomAccessIterator __last, ^ bilute.cpp:97:16: error: expected primary-expression before 'int' vector<int> balls_taking_off_now; ^ bilute.cpp:97:16: error: expected ';' before 'int' bilute.cpp:100:29: error: unable to deduce 'auto&&' from 'balls_landing_now' for (int ball_idx : balls_landing_now) { ^ bilute.cpp:104:29: error: unable to deduce 'auto&&' from 'balls_landing_now' for (int ball_idx : balls_landing_now) { ^ bilute.cpp:109:44: error: 'prev' was not declared in this scope auto it_left = prev(it_ball); ^ bilute.cpp:109:44: note: suggested alternative: In file included from /usr/include/c++/4.8/bits/stl_algobase.h:66:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from bilute.cpp:1: /usr/include/c++/4.8/bits/stl_iterator_base_funcs.h:193:5: note: 'std::prev' prev(_BidirectionalIterator __x, typename ^ bilute.cpp:111:105: error: 'binary_search' was not declared in this scope if (!binary_search(balls_landing_now.begin(), balls_landing_now.end(), left_neighbor_idx)) { ^ bilute.cpp:111:105: note: suggested alternative: In file included from /usr/include/c++/4.8/algorithm:62:0, from bilute.cpp:6: /usr/include/c++/4.8/bits/stl_algo.h:2730:5: note: 'std::binary_search' binary_search(_ForwardIterator __first, _ForwardIterator __last, ^ bilute.cpp:112:20: error: 'balls_taking_off_now' was not declared in this scope balls_taking_off_now.push_back(left_neighbor_idx); ^ bilute.cpp:117:41: error: 'next' was not declared in this scope auto it_right = next(it_ball); ^ bilute.cpp:117:41: note: suggested alternative: In file included from /usr/include/c++/4.8/bits/stl_algobase.h:66:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from bilute.cpp:1: /usr/include/c++/4.8/bits/stl_iterator_base_funcs.h:184:5: note: 'std::next' next(_ForwardIterator __x, typename ^ bilute.cpp:120:106: error: 'binary_search' was not declared in this scope if (!binary_search(balls_landing_now.begin(), balls_landing_now.end(), right_neighbor_idx)) { ^ bilute.cpp:120:106: note: suggested alternative: In file included from /usr/include/c++/4.8/algorithm:62:0, from bilute.cpp:6: /usr/include/c++/4.8/bits/stl_algo.h:2730:5: note: 'std::binary_search' binary_search(_ForwardIterator __first, _ForwardIterator __last, ^ bilute.cpp:121:20: error: 'balls_taking_off_now' was not declared in this scope balls_taking_off_now.push_back(right_neighbor_idx); ^ bilute.cpp:127:14: error: 'balls_taking_off_now' was not declared in this scope sort(balls_taking_off_now.begin(), balls_taking_off_now.end()); ^ bilute.cpp:128:99: error: 'unique' was not declared in this scope balls_taking_off_now.erase(unique(balls_taking_off_now.begin(), balls_taking_off_now.end()), balls_taking_off_now.end()); ^ bilute.cpp:128:99: note: suggested alternative: In file included from /usr/include/c++/4.8/algorithm:62:0, from bilute.cpp:6: /usr/include/c++/4.8/bits/stl_algo.h:1214:5: note: 'std::unique' unique(_ForwardIterator __first, _ForwardIterator __last, ^ bilute.cpp:135:122: error: 'binary_search' was not declared in this scope bool is_taking_off = binary_search(balls_taking_off_now.begin(), balls_taking_off_now.end(), q.ball_index); ^ bilute.cpp:135:122: note: suggested alternative: In file included from /usr/include/c++/4.8/algorithm:62:0, from bilute.cpp:6: /usr/include/c++/4.8/bits/stl_algo.h:2730:5: note: 'std::binary_search' binary_search(_ForwardIterator __first, _ForwardIterator __last, ^ bilute.cpp:136:17: error: 'answers' was not declared in this scope answers[q.original_index] = (is_on_stand && !is_taking_off); ^ bilute.cpp:142:37: error: unable to deduce 'auto&&' from 'balls_taking_off_now' for (int ball_to_take_off : balls_taking_off_now) { ^ bilute.cpp:144:41: error: 's' was not declared in this scope events.push({current_time + s[ball_to_take_off], ball_to_take_off}); ^ bilute.cpp:150:9: error: 'fout' was not declared in this scope fout << answers[i] << "\n"; ^ bilute.cpp:150:17: error: 'answers' was not declared in this scope fout << answers[i] << "\n"; ^ bilute.cpp:154:5: error: 'fout' was not declared in this scope fout.close(); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema bilute 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ă.