जब मैं नंबर लिख रहा था तो मैंने थोड़ी देर बाद देखा कि मेरे कीबोर्ड में Shiftकुंजी दबाया और अवरुद्ध किया गया था और मैंने जो लिखा था वह सभी $%&
तरह के अक्षर थे। और इससे भी बदतर, मैं अंग्रेजी और स्पेनिश कीबोर्ड लेआउट के बीच स्विच कर रहा था इसलिए मुझे नहीं पता कि मैं प्रत्येक नंबर के लिए किसका उपयोग करता हूं।
चुनौती
प्रतीक पात्रों से युक्त एक स्ट्रिंग को देखते हुए, यह अनुमान लगाने की कोशिश करें कि मैंने कौन सी संख्या लिखी है। मेरा कीबोर्ड Shiftदबाए जाने पर संख्याओं के लिए निम्न वर्ण बनाता है:
1234567890
----------
!"·$%&/()= Spanish layout
!@#$%^&*() English layout
- इनपुट ऊपर के प्रतीकों से बना एक गैर-अशक्त, गैर-रिक्त स्ट्रिंग होगा।
- यदि कीबोर्ड लेआउट स्ट्रिंग से बांधा जा सकता है (यानी यदि स्ट्रिंग में
@
अंग्रेजी लेआउट है, और यदि स्ट्रिंग में"
स्पेनिश लेआउट का उपयोग किया गया है, तो आउटपुट एक सिंगल नंबर होगा ) या यदि संख्या समान है दोनों लेआउट (यानी इनपुट!$
जो14
दोनों लेआउट के लिए अनुवाद है ); अन्यथा आउटपुट दोनों लेआउट के लिए दो संभावित नंबर होंगे यदि यह अनुमान नहीं लगाया जा सकता है और परिणामी संख्या अलग हैं। - इनपुट स्ट्रिंग हमेशा एक लेआउट में लिखी जाएगी। इसलिए आपको
"@
इनपुट के रूप में अपेक्षा करने की आवश्यकता नहीं है ।
उदाहरण
Input --> Output
------------------
/() 789 (Spanish layout detected by the use of /)
$%& 456,457 (Layout cannot be inferred)
!@# 123 (English layout detected by the use of @ and #)
()&! 8961,9071 (Layout cannot be inferred)
((·)) 88399 (Spanish layout detected by the use of ·)
!$ 14 (Layout cannot be inferred but the result is the same for both)
!!$$%% 114455 (Layout cannot be inferred but the result is the same for both)
==$" 0042/42 (Spanish layout, if a number starts with 0 you can choose to
omit them in the result or not)
Single character translations:
------------------------------
! 1
" 2
· 3
$ 4
% 5
& 6,7
/ 7
( 8,9
) 9,0
= 0
@ 2
# 3
^ 6
* 8
यह कोड-गोल्फ है , इसलिए प्रत्येक भाषा की जीत के लिए सबसे छोटा कोड हो सकता है!
·
स्पेनिश के लिए बेकार है, यह केवल कैटलन भाषा में उपयोग किया जाता है।
{(8, 9, 6, 1), (9, 0, 7, 1)}
(4 वें परीक्षण मामले के लिए) स्वीकार्य है?
·
चुनौतीपूर्ण है ...