Podpinam się pod post.
Otrzymuje poprawne dane na wyjściu, zakres nie jest przekroczony. Wydaje mi się że wszystko jest dobrze. Po przesłaniu otrzymuję: błąd wykonania (NZEC) Ktoś podpowie, co robię źle?
Poniżej przesyłam kod (Python3):
def potega (x,y):
if y==0: return 1
else:
return (x*(potega)(x,(y-1))%10)D = abs(int(input()))
i=1
while (i<=D):
a,b = input().split()
print(potega(abs(int(a))%100,abs(int(b))%100))
Nie znam sie za bardzo na Pythonie, ale...
Wczytujesz liczbe danych na wejsciu a potem kolejne liczby z wejscia - ok. Nie wiem po co jest ten abs, ale niech bedzie ze spoj wymaga czy cos tego typu. W kazdym razie przepisalem po kolei Twoj skrypt i interpreter podolal.
Za to funkcji kompletnie nie pojmuje. Rozumiem print(potega(abs(int(a)),abs(int(b)))), ale tu modulo 100 tam modulo 100 tam modulo 10... Do tego rekurencyjne wywolywanie potegi?!
Nie wiem jaki masz pomysl na to zadanie, ale rozwiazanie jest w czasie O(t), gdzie t to liczba testow. Jak wolisz odpowiedz dla kazdej pary liczb jest w O(1). Mysle ze powyzsza funkcja dziala wolniej...
Poza tym dla maksymalnych wartosci a i b uzyskalem bledna odpowiedz.
Czy może ktoś mi pomóc? Przekracza limit czasu
https://ideone.com/PEajTG39
A to nie na tym polega rozwiązywanie zadań na SPOJu, żeby to samemu wymyślić? Na sprawdzianie/kartkówce/maturze/kolokwium/egzaminie/… chyba nie zadaje się pytania typu: “to jak mogę rozwiązać to zadanie jeżeli nie znam promienia okręgu?”
Choć - ciekawostka i offtop - ostatnio ktoś męczył mnie SMSami dotyczącymi jakże trudnego zadania (a właściwie podpunktu b) tego zadania) z radiometrii. W zadaniu była wskazówka, zgodnie z którą niewiadomą wielkość należało obliczyć przy upraszczającym założeniu, że liczby masowe obu izotopów kalifornu są równe i w dniu cechowania iloraz liczby jąder obu izotopów wynosił 79/15, a w chwili obecnej iloraz ten jest równy ilorazowi mas tych izotopów w źródle kalibracyjnym. Zadanie sprowadza się do proporcji typu 79/15 = x/y, gdzie x było znane z podpunktu a). O ile podpunkt a) sprowadzał się do podstawienia danych do wzoru z Wikipedii, podpunkt b) wymagał trochę myślenia (czy na podstawie danych z zadania mogę to zrobić inaczej?) oraz umiejętności czytania ze zrozumieniem (choć każdy miewa słabszy dzień 12231. Kolejka [AL_01_02] ). O ile rozumiem, że ktoś mógł się “zamotać” (pora była późna, a do tego końcówka wakacji) to jednej rzeczy nie rozumiem. Otóż poznałem tysiące teorii o beznadziejnych zadaniach, pracownikach dydaktycznych uczelni, braku pomocy ze strony pracowników uniwersytetu, wprowadzających w błąd treściach i wskazówkach, brakujących danych, niekompetentnych prowadzących dających zadania, których sami nie potrafią rozwiązać, tylko ktoś dał im odpowiedzi, … . Po uświadomieniu kolegi, że w zadaniu chodzi o coś typu 30/15 = 10/x (z drobnymi przekształceniami i obliczeniami pomocniczymi, o które mniejsza) dowiedziałem się, że zadanie i tak jest do d… a dowodzi tego fakt, że… udało mi się je rozwiązać. I po co pytać jak coś zrobić, albo męczyć się na jakimś SPOJu, skoro można uznać, że zadania są do d…, brakuje danych do ich rozwiązania i tylko ludzie niekompetentni zajmują się czymś tak beznadziejnym?
Oczywiście masz rację. Nie chodziło mi o podanie gotowego algorytmu tylko o trafną uwagę. Nie twierdze ze zadanie jest bez sensu bo dla mnie jako początkującego każde zadanie ma sens ze względu na moją małą wiedzę w tej dziedzinie. W takim razie pomyślę nad innym rozwiązaniem.
Dziękuję i pozdrawiam cieplutko
Czy w tym zadaniu można użyć funkcji pow? Napisałem je o tak: https://ideone.com/wPZtrG10 - działa mi dla liczb które wpisywałem natomiast sędzia wyrzuca błędny wynik… Jest ktoś w stanie mi pomóc?