Број UTF-8 симбола
| vreme | memorija | ulaz | izlaz |
|---|---|---|---|
| 1 s | 64 Mb | standardni izlaz | standardni ulaz |
Најраспрострањенији начин кодирања јуникод карактера је UTF-8. У овом кодирању карактери имају кодове различите дужине, од 1 до 4 бајта. На пример, латинично слово D се кодира једним бајтом, ћирилично слово Д помоћу два бајта, за симбол 한 корејског писма су потребна три бајта, а за симбол 𐍈 чак 4 бајта.
Приликом читања низа бајтова, користе се следећа правила за одређивање дужине кода следећег карактера:
Облик следећег Дужина кода који бајта почиње тим бајтом ------------------------------------------------ 0xxxxxxx 1 (само тај бајт) 110xxxxx 2 (тај и следећи бајт) 1110xxxx 3 (тај и следећа два бајта) 11110xxx 4 (тај и следећа три бајта)
Бајт облика 10xxxxxx или 11111xxx не може
да се појави као први бајт кода карактера.
Написати програм који за дати низ бајтова одређује укупап број кодираних симбола.
Улаз
У првом реду стандардног улаза је природан број \(n\), такав да \(1 \leq n \leq 40\). У следећих \(n\) редова по један бајт (број од 0 до 255) у хексадекадном запису.
Излаз
Један цео број, број кодираних симбола.
Пример
Улаз
11 24 C2 A2 F0 90 8D 88 E2 82 AC 41
Излаз
5
Објашњење
Први бајт (24) представља комплетан кôд једног
карактера, следећа два бајта (C2 A2) кодирају други симбол,
следећа 4 бајта (F0 90 8D 88) трећи, следећа 3
(E2 82 AC) четврти, а последњи бајт (41)
представља комплетан кôд петог и последњег симбола. Кодирано је укупно
пет симбола, па треба исписати број 5 као резултат.
Morate biti ulogovani kako biste poslali zadatak na evaluaciju.