Program wywłaszczony

0

Witam. Mam problem z pewnym zadaniem, z archiwum na stronie main.edu.pl. Nauczycielka zadała nam dziesięć dowolnych problemów z tych konkursów, więc nie chcąc się obciążać (:D) wybrałem banalnie proste zadanko - http://main.edu.pl/pl/archive/ilocamp/2011/lic.

Niestety, ich sprawdzarka pokazuje mi przy dwóch ostatnich testach komunikat "program wywłaszczony". O co chodzi? Nie wiem, w jakim przypadku takie proste coś mogłoby się wywalić/zwiesić.

Kod:

 
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    bool buljan=false;
    int i2;
    
    for(int i=1; i<=n; i++)
    {
            if (n%i!=0 && buljan==false) {buljan=true; cout<<i<<" ";}
            else if (n%i!=0) {i2=i;}
    }
            
    cout<<i2;
    return 0;
}
1

W tym zadaniu nie chodzi o to, żebyś robił n obiegów pętli (bo n^9 trochę trwa), tylko, żebyś znalazł inne - efektywniejsze, szybsze rozwiązanie.

0

No to chyba muszę trochę nad tym pomyśleć. Bo największy nie-dzielnik będzie zawsze n-1, ale najmniejszy?

0

dolny dzielnik będzie w zakresie 1-sqrt(n), górny to liczba powiązana stałą, prostą zależnością od n.

1 użytkowników online, w tym zalogowanych: 0, gości: 1