1) Использование того, чего не понимаешь (6-8 строки)
2) Решение за O(N^2) при ограничении N < 10^5, что очень плохо
3) Нет проверки на выход за границы выделенной памяти (20, 22 строки)
4) Абсолютно неверная идея алгоритма: сравнивать только соседние элементы, да и еще и непонятно зачем делать во вложенном цикле + неверное написание тела цикла фор: полное непонимание того, как он работает и что делает
5) Нет проверки на то, использовали мы конкретное число уже или нет
Итог: полностью неверное решение, которое надо не менять, а стирать и переделывать.
Возможное решение на сотку:
#include <iostream>
#include <vector>
#include <map>
using namespace std;
signed main() {
map<int, int> cnt;
int n;
cin >> n;
vector<int> a(n), res;
for(auto &i: a){
cin >> i;
cnt[i]++;
}
for(auto &i: a){
if(cnt[i] > 1) res.push_back(i);
cnt[i] = 0;
}
if(res.empty()) cout << 0;
else for(auto &i: res) cout << i << " ";
}
P.S. Если что непонятно, то спрашивай - распишу поминутно кто где того самого
Процесор:Intel Core i9-10900F 2.8-5.2 GHz
Відеокарта:GeForce RTX 3080, 10GB
Оперативка:16GB (8GBx2) DDR4 3000 MHz
Материньска Плата:ASRock B460 Steel Legend
HDD,SSD2.5:1TB / HDD Toshiba 7200RPM
SSD 2.5 не уставновлен
SSD M.2:256GB / SSD M.2 GOODRAM PX500
Блок питания:750W / CoolerMaster MWE White V2
Корпус:1stPlayer AR-7-G6-PLUS Black.
4.Процесор тому що:(10-ЯДЕР, 20-ПОТОКОВ) 2.8-5.2 GHz Turbo, Comet Lake
Материнську плату тому що:1200, фаз питания
Материньска Плата Обов'язково.
3.GTA 5
ВЫСОКИЕ
1920 Х 1080 (FULL HD)
235 FPS
Резюмирую:
1) Использование того, чего не понимаешь (6-8 строки)
2) Решение за O(N^2) при ограничении N < 10^5, что очень плохо
3) Нет проверки на выход за границы выделенной памяти (20, 22 строки)
4) Абсолютно неверная идея алгоритма: сравнивать только соседние элементы, да и еще и непонятно зачем делать во вложенном цикле + неверное написание тела цикла фор: полное непонимание того, как он работает и что делает
5) Нет проверки на то, использовали мы конкретное число уже или нет
Итог: полностью неверное решение, которое надо не менять, а стирать и переделывать.
Возможное решение на сотку:
#include <iostream>
#include <vector>
#include <map>
using namespace std;
signed main() {
map<int, int> cnt;
int n;
cin >> n;
vector<int> a(n), res;
for(auto &i: a){
cin >> i;
cnt[i]++;
}
for(auto &i: a){
if(cnt[i] > 1) res.push_back(i);
cnt[i] = 0;
}
if(res.empty()) cout << 0;
else for(auto &i: res) cout << i << " ";
}
P.S. Если что непонятно, то спрашивай - распишу поминутно кто где того самого