78 / 237
Aug 2016

mój poprzedni post nie był do ciebie.
ten jest :slight_smile:

także używasz zbyt dużo zmiennych, przecież te dwie tablice są zupełnie niepotrzebne, możesz od razu wypisać odpowiedź, testuj program nie u siebie, ale na ideone.com, nie ma wtedy problemu z mieszaniem się wejścia i wyjścia

w wątku wielokrotnie pisano, dlaczego nie należy używać funkcji pow() - przeczytaj ten wątek i pomyśl - myślenie nie boli (wiem, są wyjątki)

Ile jeszcze osób ma ci odpisać, żebyś zrozumiał?

Przetestuj i zobacz:

11
1289312391 0
1 2321323123
2 324324345
3 435435436
4 9080237
5 2163062
6 96123412
7 921638125
8 2128963591
9 21538123
0 182931253

Twój program wypisuje:
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1
Wynik : 1

A prawidłowy out to:
1
1
2
1
4
5
6
7
2
9
0

Nie umieszczaj żadnych informacji o wyniku itd. To sprawdza komputer, nie człowiek i dla niego liczy się output taki, jaki wyznaczył autor zadania.

1:
system("cls"); // do wywalenia

2:
cout<<"Wynik : "<<(pot%10); // zamień na:

cout << pot % 10;

I tak ci po tych zmianach nie przejdzie:

http://ideone.com/c2gUQz22

3:
Przeczytaj jeszcze raz dokładnie cały wątek i popraw algorytm.

Testy podstawowe owszem - przejdzie. Ale innych już nie. Algorytm do wymiany :wink:

Witam mam taki problem odnosnie tego przypadku : 5 2163062 modulo z 2163062 wynosi 2. Więc 5 do potęgi 2 powinno dać 25, a u mnie daje 24 czy możecie spojrzeć i powiedzieć dlaczego ?

Dzięki za wskazówki

bo używasz kompilatora C++, który ma błędną implementację biblioteki matematycznej , w szczególności
pow(5, 2) daje wynik 24,999999999999 :slight_smile:

jeżeli sprawdzisz to na ideone.com, to tam będzie to 25

a teraz uwagi:
1) po pierwsze kod przekazujemy poprzez link do ideone.com (tam też możemy testować dane przykładowe)
2) przeczytaj, jak należy rozwiązywać zadania na spoj-u, informacje znajdziesz na starym forum spoj-a25
3) przeczytaj dokładnie treść zadania, bo obecnie rozwiązanie ma niewiele wspólnego z zadaniem
4) przeczytaj dokładnie cały ten wątek, to może nie będziesz musiał pisać: "u mnie działa, a sędzia mnie nie lubi i złośliwie mi nie zalicza :sob:"

13 days later

witam, mam pewien problem z tym zadaniem.
tutaj link do kodu http://ideone.com/oXnnnu9 dla malych poteg dziala ok dla wiekszych zwraca wartosc -8. podejrzewam ze wychodzi poza zakres long ale nie bardzo mam pomysl jak inaczej to rozwiazac. prosze o jakies wskazowki

może zacznij od przeczytania tego wątku ?

potem karta, ołówek (długopis) i policz trochę przypadków, a na koniec wyciągnij w tego prawidłowości

jeżeli kogoś boli myślenie, to przede wszystkim nie powinien myśleć o programowaniu

Może się mylę, może nie...ale coś mi się wydaje że coś Ci się sypie ze względu na zmienne.
Czy nie ?!
W sensie ze dla wyniku, zwykły int to może być troszkę mały pojemnosciowo jak na tak spory wynik. Czy po prostu sie nie znam ?!

A po za tym nijaki "mariusz" napisał:

w wątku wielokrotnie pisano, dlaczego nie należy używać funkcji pow() - przeczytaj ten wątek i pomyśl - myślenie nie boli (wiem, są wyjątki)(...)

a nie jaki sig napisał:

Wypisz sobie po 10 pierwszych potęg liczb od 1 do 10, i spójrz na ostatnie cyfry.

Ja jeszcze skrobie swój kodzik dlatego tak mało pewnie...

.. i się udało :slight_smile:
Sędzia zaakceptował po czasie 0.00s, można?! MOŻNA!
Wystarczy poczytać i chwilkę pomyśleć.

Dodam że wykorzystywałem standardowe "cin" "cout" bez żadnych dodatkowych bibliotek, zaledwie 3 zmienne typu int.

Aktualnie walczę z innym problemem. Przekraczam limit czasowy. Czytałem post i zauważyłem zależności miedzy potęgami. Wydaje mi się że nie jest to jedyny sposób na rozwiązanie tego zadania. http://ideone.com/n3B6uO35 oto mój kod. Jak masz jakieś pomysły jak go przyspieszyć by się mieścił w limicie czasowym to słucham :slight_smile:

[edit by narbej] ... Post jest skierowany do osób chcących udzielić odpowiedzi/podpowiedzi, ...

Pomogłem już dziesiątkom osób, tobie też dałem odpowiedź, najlepszą z możliwych :slight_smile:
to, że jej nie rozumiesz, to twój problem

Nikt inny raczej tego nawet nie czyta, a tym bardziej jeżeli nie chciałby pomóc.

PS
Beznadziejny przypadek - chodziło o to, że twojego sposobu nie da się przyśpieszyć, nawet jak poczytasz o szybkim potęgowaniu, to twój kod wymaga zbyt dużo poprawek - a chyba chodzi tu też o odrobinę samodzielności, czyż nie?