Detalii evaluare #56891195

Rezumat problemă

mean

#3221

George este un mare iubitor al informaticii, dar este încă la început și de aceea are nevoie de ajutorul vostru. La ora de informatică profesoara scrie pe tablă N numere naturale, iar la fiecare pas George trebuie sa aleagă două numere de pe poziții consecutive și să le înlocuiască cu un singur număr egal cu partea întreagă a mediei lor aritmetice. George trebuie să facă aceste înlocuiri până când mai rămâne pe tablă doar un număr. Ajutați-l pe George sa afle care este cel mai mare număr care poate fi obținut la final.

Detalii

Problema mean Operații I/O tastatură/ecran
Limita timp 0.2 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #56891195 Utilizator Martin Alex (Alex_Martin)
Fișier mean.cpp Dimensiune 1.26 KB
Data încărcării 10 Martie 2025, 10:05 Scor / rezultat Eroare de compilare

Evaluare

Mesaj compilare

mean.cpp: In function 'int main()':
mean.cpp:11:38: error: conversion from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to non-scalar type 'std::list<int>::iterator {aka std::_List_iterator<int>}' requested
     list<int>::iterator it = l.begin();

                                      ^
mean.cpp:14:12: error: no match for 'operator=' (operand types are 'std::list<int>::iterator {aka std::_List_iterator<int>}' and 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}')
         it = l.begin();

            ^
mean.cpp:14:12: note: candidates are:
In file included from /usr/include/c++/4.8/list:63:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78,
                 from mean.cpp:1:
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(const std::_List_iterator<int>&)
     struct _List_iterator
            ^
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'const std::_List_iterator<int>&'
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(std::_List_iterator<int>&&)
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'std::_List_iterator<int>&&'
mean.cpp:28:12: error: no match for 'operator=' (operand types are 'std::list<int>::iterator {aka std::_List_iterator<int>}' and 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}')
         it = l.begin();

            ^
mean.cpp:28:12: note: candidates are:
In file included from /usr/include/c++/4.8/list:63:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78,
                 from mean.cpp:1:
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(const std::_List_iterator<int>&)
     struct _List_iterator
            ^
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'const std::_List_iterator<int>&'
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(std::_List_iterator<int>&&)
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'std::_List_iterator<int>&&'
mean.cpp:44:20: error: no matching function for call to 'std::list<long long int>::erase(std::list<int>::iterator&)'
          l.erase(it);

                    ^
mean.cpp:44:20: note: candidates are:
In file included from /usr/include/c++/4.8/list:64:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78,
                 from mean.cpp:1:
/usr/include/c++/4.8/bits/list.tcc:108:5: note: std::list<_Tp, _Alloc>::iterator std::list<_Tp, _Alloc>::erase(std::list<_Tp, _Alloc>::iterator) [with _Tp = long long int; _Alloc = std::allocator<long long int>; std::list<_Tp, _Alloc>::iterator = std::_List_iterator<long long int>]
     list<_Tp, _Alloc>::
     ^
/usr/include/c++/4.8/bits/list.tcc:108:5: note:   no known conversion for argument 1 from 'std::list<int>::iterator {aka std::_List_iterator<int>}' to 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}'
In file included from /usr/include/c++/4.8/list:63:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78,
                 from mean.cpp:1:
/usr/include/c++/4.8/bits/stl_list.h:1193:7: note: std::list<_Tp, _Alloc>::iterator std::list<_Tp, _Alloc>::erase(std::list<_Tp, _Alloc>::iterator, std::list<_Tp, _Alloc>::iterator) [with _Tp = long long int; _Alloc = std::allocator<long long int>; std::list<_Tp, _Alloc>::iterator = std::_List_iterator<long long int>]
       erase(iterator __first, iterator __last)
       ^
/usr/include/c++/4.8/bits/stl_list.h:1193:7: note:   candidate expects 2 arguments, 1 provided
mean.cpp:49:17: error: no match for 'operator=' (operand types are 'std::list<int>::iterator {aka std::_List_iterator<int>}' and 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}')
              it = l.begin();

                 ^
mean.cpp:49:17: note: candidates are:
In file included from /usr/include/c++/4.8/list:63:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78,
                 from mean.cpp:1:
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(const std::_List_iterator<int>&)
     struct _List_iterator
            ^
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'const std::_List_iterator<int>&'
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(std::_List_iterator<int>&&)
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'std::_List_iterator<int>&&'
mean.cpp:60:8: error: no match for 'operator=' (operand types are 'std::list<int>::iterator {aka std::_List_iterator<int>}' and 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}')
     it = l.begin();

        ^
mean.cpp:60:8: note: candidates are:
In file included from /usr/include/c++/4.8/list:63:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78,
                 from mean.cpp:1:
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(const std::_List_iterator<int>&)
     struct _List_iterator
            ^
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'const std::_List_iterator<int>&'
/usr/include/c++/4.8/bits/stl_list.h:125:12: note: std::_List_iterator<int>& std::_List_iterator<int>::operator=(std::_List_iterator<int>&&)
/usr/include/c++/4.8/bits/stl_list.h:125:12: note:   no known conversion for argument 1 from 'std::list<long long int>::iterator {aka std::_List_iterator<long long int>}' to 'std::_List_iterator<int>&&'

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 mean 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ă.

Du-te sus!