Pecah dua angka menjadi faktorial mereka; jika mereka berbagi, kembalikan nilai falsey. Jika tidak, kembalikan nilai yang sebenarnya. (terinspirasi oleh pertanyaan terakhir ini )
Dengan kata lain, tulis setiap nomor input sebagai jumlah faktorial (dari bilangan bulat positif) dengan cara serakah mungkin; mengembalikan nilai kebenaran jika tidak ada faktorial yang muncul di kedua representasi, nilai falsey sebaliknya.
Contoh
Diberikan 20 dan 49:
20 = 3! + 3! + 3! + 2!
49 = 4! + 4! + 1!
Tidak ada faktorial yang muncul di kedua representasi, jadi kembalikan nilai yang sebenarnya.
Diberikan 32 dan 132:
132 = 5! + 3! + 3!
32 = 4! + 3! + 2!
3! muncul di kedua representasi, jadi kembalikan nilai falsey.
I / O
Input dan output dapat melalui sarana standar apa pun .
Input akan selalu berupa dua bilangan bulat tidak negatif; tidak ada batas atas pada bilangan bulat ini selain dari yang dibutuhkan bahasa Anda.
Output harus berupa nilai truey atau falsey . Nilai-nilai ini tidak harus konsisten untuk input yang berbeda, selama setiap output benar / salah.
Uji Kasus
Jika satu input adalah 0
, jawabannya akan selalu benar. Kasus uji kebenaran lainnya:
{6, 3}, {4, 61}, {73, 2}, {12, 1}, {240, 2}, {5, 264}, {2, 91}, {673, 18},
{3, 12}, {72, 10}, {121, 26}, {127, 746}
Jika kedua input bilangan bulat ganjil, atau jika kedua input bilangan bulat positif yang sama, maka output akan selalu salah. Kasus uji falsey lainnya:
{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}
Ini kode-golf , byte paling sedikit menang!