2013 में मुख्य कारक है 3*11*61
। 2014 में प्रमुख कारक है 2*19*53
। इन कारकों के संबंध में एक दिलचस्प संपत्ति यह है कि 2013 और 2014 के कारकों में अलग-अलग अपराध मौजूद हैं जो एक ही संख्या में हैं 11+61=19+53=72
:।
एक प्रोग्राम या फ़ंक्शन लिखें जो इसके इनपुट के रूप में दो सकारात्मक पूर्णांक 1 से अधिक लेता है और एक सत्य मान देता है यदि एक नंबर के चयनित प्रमुख कारकों का योग है जो दूसरी संख्या में चयनित मुख्य कारकों के योग के बराबर है, और एक अन्यथा मूल्य।
स्पष्टीकरण
- दो से अधिक प्रमुख कारकों का उपयोग किया जा सकता है। संख्या के सभी प्रमुख कारकों का योग में उपयोग करने की आवश्यकता नहीं है। यह आवश्यक नहीं है कि दो संख्याओं से उपयोग किए जाने वाले primes की संख्या समान हो।
- यहां तक कि अगर किसी संख्या के गुणन में 1 से अधिक की शक्ति के लिए एक प्रमुख उठाया जाता है, तो इसका उपयोग केवल संख्या के लिए primes के योग में एक बार किया जा सकता है।
- 1 प्राइम नहीं है।
- दोनों इनपुट नंबर से कम होंगे
2^32-1
।
परीक्षण के मामलों
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
यह कोड गोल्फ है। मानक नियम लागू होते हैं। बाइट्स में सबसे छोटा कोड जीतता है।
true
वे कारक साझा करते हैं 7
?