Greska u test primeru

Znam naravno da je neminovno da se naidje na gresku, sa zbirkom od ovoliko zadataka, ali resio sam da vam od sad saljem da ispravite, jer sto da ne, na tri primera daje WA medjutim sam siguran da resenje koje se ocekuje nije ispravno.

Primeri 11, 5 , 6.

https://petlja.org/biblioteka/r/Zbirka3/dopuna_do_punog_kvadrata

Evo mog koda:

#include<bits/stdc++.h>
using namespace std;
#define ull unsigned long long

void primesFill(map<ull, ull> &primeFactors, ull n)
{
while(!(n % 2))
{
primeFactors[2]++;
n >>= 1;
}

for(ull i = 3; i * i < n; i += 2)
{
    while(!(n % i))
    {
        primeFactors[i]++;
        n /= i;
    }
}
if(n > 2)
    primeFactors[n]++;

}

int main()
{
ull n;
cin >> n;
map<ull, ull> primeFactors;
primesFill(primeFactors, n);
int maks = 0;

ull res = 1;
for(auto &i : primeFactors)
{
    if(primeFactors[i.first] % 2 == 1)
    {
        res *= i.first;
    }
}

cout << res << endl;

}

Zdravo zdravo,

Slobodno nam pisi uvek kada pronadjes greske u test primerima, tezimo da ih ispravimo sto pre.

Proverom test primera na ovom zadatku nije pronadjena ni jedna greska. :slight_smile:
Pogledaj da li si pokrio sve ivicne slucajeve. :slight_smile:

Pozdrav

Moja greska, fali mi znak jednakosti, pa samim tim ukoliko je je zadnji cinilac kvadrat nekog prostog broja, umesto u primeru 5 , da mi nadje 13 * 13, on stane na 169.

1 Like

Kad sam proveravao test primere, nisam obratio paznju da je npr 169 kvadrat, xD.

1 Like