Siemka. Mam problem. Mianowicie mam takie fajne zadanko:
https://sio2.mimuw.edu.pl/c/wiekuisty_ontak2014/p/poz/
I mam nawet do niego kod ale w pewnym miejscu mam błąd, są to linie od 37-41.
Nie wiem co moge mieć tam dokładnie źle. Prosze o pomoc jeśli ktoś zrozumie treść zadania.
#include <bits/stdc++.h>
using namespace std;
int n;
int tab[1235];
int mapp[1235];
bool check[1235];
int pref[1235];
map<int,int> mapa;
vector<int> hasze;
set<int> rozne;
int main()
{
srand(time(NULL));
cin >> n;
for(int i=1; i<=n; i++)
{
cin >> tab[i];
mapa[tab[i]]=rand()%1000000007;
}
for(int i=1; i<=n; i++)
{
mapp[i]=mapa[tab[i]];
}
for(int i=1; i<=n; i++)
{
pref[i]=pref[i-1] + mapp[i];
}
for(int i=1; i<=n; i++)
{
for(int j=i; j<=n; j++)
{
if(!check[tab[j]])
{
hasze.push_back(pref[j]-pref[i-1]);
check[tab[j]]=1;
}
}
for(int i=0; i<1235; i++)
{
check[i]=0;
}
}
for(int i=0; i<hasze.size(); i++)
{
rozne.insert(hasze[i]);
}
cout << rozne.size();
return 0;
}