परिचय
मैं QWERTY कीबोर्ड लेआउट का उपयोग करके एक मध्यम गति से टाइप कर सकता हूं। लेकिन अगर येलवुडवुड जैसे शब्द में एक टन दोहराया गया अक्षर है, तो इसे टाइप करने में थोड़ा अधिक समय लगता है। इससे भी बदतर तब होता है जब "कूद" जैसे शब्द में एक ही उंगली का उपयोग कई अलग-अलग अक्षरों के लिए किया जाता है।
यहां बताया गया है कि मुझे प्रत्येक उंगली पर अक्षर लिखने में कितना समय लगता है (बहुत अवैज्ञानिक रूप से मापा गया):
कॉलम उंगली का नाम, कीस्ट्रोक्स / सेकंड, सेकंड / कीस्ट्रोक और प्रत्येक उंगली द्वारा उपयोग की जाने वाली कुंजी हैं
Typing same letter twice:
L Pinky 5.2 0.1923076923 1qaz
L Ring 5 0.2 2wsx
L Mid 5.3 0.1886792453 3edc
L Index 5.5 0.1818181818 4rfv5tgb
R Thumb 6.5 0.1538461538 [space]
R Index 6.9 0.1449275362 6yhn7ujm
R Mid 6.3 0.1587301587 8ik,
R Ring 6.2 0.1612903226 9ol.
R Pinky 6.1 0.1639344262 0p;'
Typing different letter on same finger:
L Pinky 4.6 0.2173913043
L Ring 4.6 0.2173913043
L Mid 4.5 0.2222222222
L Index 5.3 0.1886792453
R Index 5.4 0.1851851852
R Mid 5.1 0.1960784314
R Ring 5.2 0.1923076923
R Pinky 5.2 0.1923076923
CSV प्रारूप में समान डेटा ।
यह
.75 * (first_finger_same_letter_time + second_finger_same_letter_time) / 2
दो उंगलियों के बीच स्विच करने का समय।
चुनौती
इनपुट के रूप में एक स्ट्रिंग को देखते हुए, इसे टाइप करने में कितना समय लगता है?
- "टाइमर" उस क्षण को शुरू करता है जिसे पहली कुंजी दबाया जाता है और अंतिम कुंजी दबाने पर समाप्त होता है। आप कीपेस के बीच का समय गिन रहे हैं।
- यह कोड-गोल्फ है । बाइट्स जीत में सबसे छोटा जवाब।
- सबमिशन एक पूर्ण कार्यक्रम या फ़ंक्शन हो सकता है।
- इनपुट और आउटपुट किसी भी तरह से आप इसे चाहते हैं , stdin / out, function params, file, कोई फर्क नहीं पड़ता।
- आउटपुट कम से कम 3 दशमलव स्थानों के लिए सटीक होना चाहिए (+/- 0.001 राउंडिंग त्रुटि के लिए ठीक है)। 1 के तहत संख्या के लिए 0. अग्रणी और न्यूलाइन वैकल्पिक को पीछे छोड़ रहा है।
- इनपुट एक स्ट्रिंग होगी जिसमें (लोअरकेस) az, 0-9, स्पेस, सेमीकोलन, अल्पविराम, अवधि और एपोस्ट्रोफ शामिल हैं।
- मैं हमेशा अपने दाहिने अंगूठे के साथ रिक्त स्थान टाइप करता हूं।
- मैं सामान्य स्पर्श टाइपिंग उंगलियों का उपयोग करता हूं (आप उंगली-कुंजी मैपिंग के लिए उपरोक्त तालिका भी देख सकते हैं)।
- संदर्भ कोड का उपयोग परीक्षण मामलों को उत्पन्न करने के लिए किया जाता है
परीक्षण के मामलों
(खाली स्ट्रिंग या कोई एक वर्ण स्ट्रिंग) - 0.000
aa - 0.192
fff - 0.364
fj - 0.123
the quick brown fox jumped over the lazy dog - 5.795
yellowwooddoor - 1.983
orangewooddoor - 1.841
jump on it, jump on it - 2.748
type on it, type on it - 2.549
abcdefghijklmnopqrstuvwxyz01234567890 ;,.' - 5.746
ok, this may not be the most accurate but it's in the ballpark, maybe within 30 percent or so. - 12.138
0यदि इनपुट खाली है या एकल वर्ण है तो क्या हमें आउटपुट की आवश्यकता है ?