Počet bodov:
Popis:  12b
Program:  8b

“Ideme dobrým smerom?” opýtal sa Maťko Kubka. Kubko mal kompas a Maťko mal mapu. “Ideme niekde medzi severom a východom.” povedal Kubko. Maťko sa pozrel na mapu a povedal: “Veľmi si mi nepomohol. Ak ideme skôr k severu, tak to minieme o desať kilometrov a ak viac k východu, tak možno aj o päť.” Kubko sa pozrel na kompas a zamyslel sa. Ak ideme viec k severu, to je vlastne medzi severom a severovýchodom. Ak je to bližšie k tomu severovýchodu, tak je to medzi severovýchodom a severoseverovýchodom a presne uprostred medzi nimi bol smer, ktorým išli. Kubko teda spokojne vyhlásil: “Ideme presne na severovýchodoseveroseverovýchod.”. Maťko sa usmial, a povedal: "Ďakujem, teraz viem, že ideme správne.

Viete aj vy akým smerom idú dvojičky Maťko a Kubko?

Úloha

Na vstupe dostanete názov nejakej svetovej strany a vašou úlohou je zistiť, akým smerom sa nachádza táto svetová strana. Aby sme vám to zjednodušili1, chceme od vás uhol medzi severom a danou svetovou stranou, pri čom nechceme radiány, stupne, ani žiadne iné exotické zápisy, ale jednoducho číslo od \(0\) do \(1\). A toto číslo chceme v dvojkovej sústave.

Názov svetovej strany vždy vznikne spojením dvoch svetových strán medzi ktorými sa nachádza. Nie však hocijakých (juho-severovýchod predsa neexistuje). Musia to byť strany “o úroveň vyššie”. Predstavme si že na prvej úrovni je sever, východ, juh, západ. Na druhej pridáme aj tie medzi nimi (teda S,SV,V,JV,J,JZ,Z,SZ). Môžete si všimnúť, že každá ďalšia nová strana už bude vznikať medzi dvoma stranami, z ktorých jedna vznikla na vyššej úrovni ako druhá. V takomto poradí ich aj skladáme. Máme teda severo-severovýchod a nie severovýchodo-sever, lebo sever vznikol už na prvej úrovni a severovýchod až na druhej.

Teraz sa pozrieme na uhly. Sever je \(0\), východ je \(1/4\), juh je \(1/2\) a západ \(3/4\). Uhol \(1\) by opäť predstavoval sever, ale to nebudeme používať, lebo sever je už \(0\). Ďalšie uhly sú jednoducho uprostred medzi susedmi. Juhozápad je teda medzi \(1/2\) a \(3/4\), a má uhol \(5/8\).

Na koniec sa pozrieme ako vyzerá binárny zápis. Nula je stále nula. V binárnej sústave predstavujú miesta naľavo smerom od desatinnej čiarky postupne hodnoty \(1\), \(2\), \(4\), \(8\), \(16\), … a tie na pravej strane, (desatinné2 miesta) predstavujú zase postupne z ľava do prava \(1/2\), \(1/4\), \(1/8\), \(1/16\), … .

Napríklad \(13/16 = \boldsymbol{1}/2 + \boldsymbol{1}/4 + \boldsymbol{0}/8 + \boldsymbol{1}/16\), teda \(0.1101\) v dvojkovej sústave3.

Formát vstupu

Na vstupe je jeden riadok a na ňom skratka názvu svetovej strany. Skladá sa z veľkých písmen “S,V,Z,J”. Dĺžka tohoto slova nepresiahne \(10^7\)

Formát výstupu

Vypíšte jedno desatinné číslo v dvojkovej sústave, bez núl na konci s výnimkou nuly samotnej pre sever. Na oddelenie desatinných miest použite bodku, nie čiarku.

Príklady

Input:

SV

Output:

0.001

Sevorovýchod, \(1/8=0/2+0/4+1/8\)

Input:

SVVSV

Output:

0.00101

Sevorovýchodo-Východosevorovýchod, \(5/32=0/2+0/4+1/8+0/16+1/32\)


  1. Áno, naozaj je to jednoduchšie.↩︎

  2. v dvojkovej sústave skôr polovičné↩︎

  3. pre odvážnejších: zapíšte v dvojkovej sústave \(1/3\)↩︎

Odovzdávanie

Na odovzdávanie sa musíš prihlásiť

Otázky a diskusia

Po skončení kola budete mať príležitosť na diskutovanie o riešeniach v diskusii pod vzorovým riešením.