यूटीएफ -8 बाइट अनुक्रम की लंबाई निर्धारित करें जो इसकी पहली बाइट दी गई है। निम्न तालिका से पता चलता है कि प्रत्येक संभावित लंबाई के लिए नक्शा कौन सा है:
Range Length
--------- ------
0x00-0x7F 1
0xC2-0xDF 2
0xE0-0xEF 3
0xF0-0xF4 4
तालिका में अंतराल पर नोट: 0x80-0xBF निरंतर बाइट्स हैं, 0xC0-0xC1 एक अतिरंजित, अमान्य अनुक्रम शुरू करेगा, 0xF5-0xFF का परिणाम Unicic अधिकतम से परे एक कोड बिंदु में होगा।
एक प्रोग्राम या फ़ंक्शन लिखें जो इनपुट और आउटपुट के रूप में UTF-8 बाइट अनुक्रम का पहला बाइट लेता है या अनुक्रम की लंबाई लौटाता है। I / O लचीला है। उदाहरण के लिए, इनपुट एक संख्या, 8-बिट वर्ण या एक-वर्ण स्ट्रिंग हो सकता है। आप मान सकते हैं कि पहला बाइट एक मान्य अनुक्रम का हिस्सा है और ऊपर की सीमाओं में से एक में आता है।
यह कोड गोल्फ है। बाइट्स में सबसे छोटा जवाब जीत जाता है।
परीक्षण के मामलों
0x00 => 1
0x41 => 1
0x7F => 1
0xC2 => 2
0xDF => 2
0xE0 => 3
0xEF => 3
0xF0 => 4
0xF4 => 4