İki sayıyı faktöriyelerine ayırın; eğer paylaşırlarsa, bir falsey değeri döndürün. Aksi takdirde, gerçek bir değer döndürün. ( bu son sorudan esinlenerek )
Diğer bir deyişle, her girdi numarasını faktöriyellerin (pozitif tamsayıların) toplamı olarak en açgözlü şekilde yazın; her iki göstergede faktöryel görünmüyorsa gerçek bir değer döndürür, aksi takdirde bir falsey değer verir.
Misal
Verilen 20 ve 49:
20 = 3! + 3! + 3! + 2!
49 = 4! + 4! + 1!
Her iki gösterimde de faktöriyel görünmez, bu nedenle gerçek bir değer döndürün.
32 ve 132 verildi:
132 = 5! + 3! + 3!
32 = 4! + 3! + 2!
3! her iki gösterimde de görünür, bu nedenle bir falsey değeri döndürün.
I / O
Giriş ve çıkış herhangi bir standart yöntemle yapılabilir .
Girdi her zaman iki negatif olmayan tamsayı olacaktır; dilinizin gerektirdiğinden başka bu tamsayılarda üst sınır yoktur.
Çıktı doğruluk veya falsey bir değer olmalıdır . Her çıktının doğru / falsey olduğu sürece, bu değerlerin farklı girdiler için tutarlı olması gerekmez.
Test Durumları
Eğer bir girdi varsa 0
, cevap her zaman doğrudur. Diğer doğruluk testi vakaları:
{6, 3}, {4, 61}, {73, 2}, {12, 1}, {240, 2}, {5, 264}, {2, 91}, {673, 18},
{3, 12}, {72, 10}, {121, 26}, {127, 746}
Her iki giriş de tek tamsayı ise veya her iki giriş de aynı pozitif tamsayı ise, çıkış her zaman falsey olur. Diğer falsey test vakaları:
{8, 5}, {7, 5}, {27, 47}, {53, 11}, {13, 123}, {75, 77}, {163, 160}, {148, 53},
{225, 178}, {285, 169}, {39, 51}, {207, 334}, {153, 21}, {390, 128}, {506, 584},
{626, 370}, {819, 354}
Bu kod golf , çok az bayt kazanır!