Giriş Bezout kimliği
İki A, B tamsayısının GCD'si, her ikisini de hiçbir kalıntı bırakmadan ayıran en büyük pozitif tamsayıdır. Şimdi Öklid'in özelliği nedeniyle her bir tamsayı N'nin aşağıdaki gibi başka bir tamsayı M'ye bölünebileceği:
yazabileceğimiz u, v çiftleri var:
Bu çiftlerin sonsuz miktarda olması nedeniyle özel çiftler bulmak istiyoruz. Aslında tam olarak (A, B sıfır değil),
Meydan okuma
Bu zorluğun amacı, yukarıdaki kısıtlamaları doyuran ve u'nun pozitif olması gereken (sıralı) katsayı çiftini (u, v) bulmaktır. Bu, çıkışı benzersiz bir çifte daraltır.
Giriş
Girişin pozitif olduğunu varsayabiliriz, ayrıca A her zaman B'den daha büyük olacaktır (A> B).
Çıktı
Programımızın / fonksiyonumuzun çıktısı, meydan okumada belirtilen (sıralı) çift olmalıdır.
kurallar
Yerleşik genişletilmiş Öklid algoritmaları kullanılmamalıdır (örneğin Mathematica'da kullanılmasına izin verilir, GCD
ancak kullanılmaz ExtendedGCD
- yine de 5,3 için başarısız olur).
Cevap tam bir program (STDIN veya benzeri yoluyla giriş ve STDOUT yoluyla çıkış) veya bir işlev (çifti döndürme) olabilir.
Çiftin (u, v) yanında herhangi bir çıktı olmayacak, sondaki satırlara veya boşluklara izin verilecektir. (parantez veya virgül iyi)
Bu kod golf, tüm standart boşluklar yasaktır ve en düşük bayt sayısına sahip program kazanır.
Örnekler
(A, B) -> (u, v)
(42, 12) -> (1, -3)
(4096, 84) -> (4, -195)
(5, 3) -> (2, -3)
(1155, 405) -> (20, -57)
(37377, 5204) -> (4365, -31351)
(7792, 7743) -> (7585, -7633)
(38884, 2737) -> (1707, -24251)
(6839, 746) -> (561, -5143)
(41908, 7228) -> (1104, -6401)
(27998, 6461) -> (3, -13)
(23780, 177) -> (20, -2687)
(11235813, 112358) -> (8643, -864301)