Ciao a tutti, sto cercando di risolvere il problema Science against spam, ma non capisco come funziona la sottoposizione ai problemi. Ho provato il codice più e più volte provando a risolvere le tasks che chiede il problema e anche se mi funzionano le condizioni imposte dalle task il mio punteggio rimane quello dato dalla risoluzione degli esempi. Potete spiegarmi meglio come funzionano??
Codice in c++:
#include <iostream>
using namespace std;
int main()
{
int B, G, E, Ni;
int bgP; //bad and good points
int bE = 0,gE = 0; //bad emails, good emails
cin>>B;
string bads[B];
for(int i = 0; i < B; i++)
{
cin>>bads[i];
}
cin>>G;
string goods[G];
for(int i = 0; i < G; i++)
{
cin>>goods[i];
}
cin>>E;
string words[E];
for(int j = 0; j < E; j++)
{
cin>>Ni;
bgP = 0;
for(int k = 0; k < Ni; k++)
{
cin>>words[j];
for(int i = 0; i < B; i++)
{
if(words[j] == bads[i])
{
bgP--;
}
}
for(int i = 0; i < G;i++)
{
if(words[j] == goods[i])
{
bgP++;
}
}
}
if(bgP < 0)
{
bE++;
}
else if(bgP > 0)
{
gE++;
}
}
cout<<bE<<" "<<gE<<endl;
return 0;
}