Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
FR_10_07 - Liczby pokrewne |
Dwie liczby a i b są ze sobą spokrewnione, jeśli istnieje taka całkowita liczba r, z przedziału [0, 4], że liczbę a otrzymujemy poprzez zmniejszenie sumy dzielników właściwych liczby b o r oraz liczbę b otrzymujemy poprzez zmniejszenie sumy dzielników właściwych liczby a o r. Liczbę r nazywamy stopniem pokrewieństwa.
Dla przykładu liczba 102 jest spokrewniona z liczbą 110, a stopień pokrewieństwa wynosi 4, liczba 496 jest spokrewniona ze sobą, a stopień pokrewieństwa wynosi 0.
Wejście
W pierwszym wierszu jedna liczba n ∈ [1, 104] określająca liczbę zestawów danych. W kolejnych n wierszach znajdują się zestawy danych.
Każdy zestaw danych składa się z jednej liczby całkowitej x ∈ [2, 109], dla której szukamy liczby spokrewnionej.
Wyjście
Dla każdej wczytanej liczby x należy wypisać liczbę z nią spokrewnioną oraz stopień pokrewieństwa. Jeżeli liczba jest spokrewniona z więcej niż jedną liczbą wybieramy tą o najmniejszym stopniu pokrewieństwa.
Gdy liczba x nie posiada liczby spokrewnionej należy wypisać -1.
Przykład
Wejście:
4 21 11 102 496
Wyjście:
-1 -1 110 4 496 0
Dodane przez: | Marcin Kasprowicz |
Data dodania: | 2018-12-20 |
Limit czasu wykonania programu: | 1s-5s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET |