2013 en önemli faktörleşmeye sahiptir 3*11*61
. 2014 en önemli faktörleşmeye sahiptir 2*19*53
. Bu ayrıştırmaları ilişkin ilginç bir özellik, 2013 ve 2014 aynı sayıda olduğunu toplamı arasında çarpanlama içinde farklı asal varolduğudur: 11+61=19+53=72
.
1'den büyük iki pozitif tamsayı girişi olarak alan ve ikinci sayıdaki seçilen asal çarpanların toplamına eşit bir sayının seçilmiş asal çarpanların toplamı varsa, bir truthy değeri döndüren bir program veya işlev yazın. Aksi takdirde falsey değeri.
Açıklamalar
- İkiden fazla ana faktör kullanılabilir. Sayıların asal faktörlerinin hepsinin toplamda kullanılması gerekmez. İki sayının kullandığı primer sayısının eşit olması şart değildir.
- Bir sayının çarpanlara ayrılmasında bir asıl 1'den büyük bir güce yükseltilmiş olsa bile, sayının asal toplamında yalnızca bir kez kullanılabilir.
- 1 asal değildir.
- Her iki giriş numarası da daha küçük olacaktır
2^32-1
.
Test durumları
5,6
5=5
6=2*3
5=2+3
==>True
2013,2014
2013=3*11*61
2014=2*19*53
11+61=19+53
==>True
8,15
8=2^3
15=3*5
No possible sum
==>False
21,25
21=3*7
25=5^2
No possible sum (can't do 3+7=5+5 because of exponent)
==>False
Bu kod golfü. Standart kurallar geçerlidir. Bayt cinsinden en kısa kod kazanır.
true
faktörü paylaştıkları için 7
?