Biorąc pod uwagę listę dodatnich liczb całkowitych, określ, czy każda sąsiednia para liczb całkowitych ma wspólny czynnik pierwszy. Innymi słowy, wypisz prawdę wtedy i tylko wtedy, gdy nie ma dwóch sąsiadujących liczb całkowitych na liście współrzędnych .
Innymi słowy: biorąc pod uwagę listę liczb całkowitych dodatnich [a 1 a 2 … a n ] , wypisz czy
gcd (a 1 , a 2 )> 1 && gcd (a 2 , a 3 )> 1 &&… && gcd (a n − 1 , a n )> 1.
Lista zawsze będzie zawierać co najmniej dwa elementy (n ≥ 2).
Jednak…
Wyzwanie to ma również ograniczone źródło : punkty kodowe w odpowiedzi (niezależnie od tego, w jakiej stronie kodowej może się znajdować) muszą spełniać warunek sprawdzany przez program.
Na przykład print 2
jest poprawnym programem. Jako lista punktów kodowych Unicode jest to [112 114 105 110 116 32 50] , który spełnia ten warunek: 112 i 114 mają współczynnik 2 ; a 114 i 105 mają współczynnik 3 itd.
Nie main
może jednak wystąpić w prawidłowym programie (przepraszam!), Ponieważ punkty kodowe Unicode m
i a
, a mianowicie 109 i 97 , są chronione prawem autorskim. (Na szczęście zgłoszenie nie musi być pełnym programem!)
Twój program nie może zawierać punktu kodowego 0.
Przypadki testowe
Prawda:
[6 21] -> 1
[502 230 524 618 996] -> 1
[314 112 938 792 309] -> 1
[666 642 658 642 849 675 910 328 320] -> 1
[922 614 530 660 438 854 861 357 477] -> 1
Falsy:
[6 7] -> 0
[629 474 502 133 138] -> 0
[420 679 719 475 624] -> 0
[515 850 726 324 764 555 752 888 467] -> 0
[946 423 427 507 899 812 786 576 844] -> 0
To jest code-golf : wygrywa najkrótszy kod w bajtach.
print 2
to jest ważne, ale );=ae
bycie najlepszym jest naprawdę trudne, nie pomyślałem o tym ... Zastanawiam się, czy coś takiego jak Haskell może rywalizować?
%)+/5;=CGIOSYaegkmq\DEL
.