Programozó versenyek

DEIK Regionális Programozó Csapatverseny, egyetemi/főiskolai kategória, 2013. december 1.

2013. december 1. 10:30 – 2013. december 1. 15:30

Az 1-es számrendszer

Amint ismeretes, az n-alapú számrendszerben n különböző számjegy értelmezett. Ennek alapján az 1-es számrendszerben csak egyféle számjegy van, a „0”. Az 1-es számrendszerbeli számokat az alábbi szabályok szerint értelmezzük: Minden szám 0-k szóközökkel elválasztott blokkjaiból áll. Minden blokk tartalmazhat 1, 2 vagy több 0-t. Minden számhoz tartozik egy jelzőbit.

  • Az egyetlen 0-ból álló blokk 1-re állítja a jelzőbitet.
  • A két 0-ból álló blokk 0-ra állítja a jelzőbitet.
  • Ha egy blokkban n (n > 2) 0 van, akkor hozzáfűzünk a számunk végéhez n – 2 bináris számjegyet, amelyek értéke a jelzőbit aktuális értéke.

Minden szám első blokkja legfeljebb 2 0-t tartalmaz. Az 1-es számrendszerbeli 0 0000 00 000 0 0000 szám például binárisan 11011:

  • Az első blokk 1-re állítja a jelzőbitet.
  • A második blokk 4 0-ból áll, tehát a jelzőbitet (ami 1) 4 – 2 = 2-szer a számhoz fűzi (11).
  • A harmadik blokk 2 0-ból áll, 0-ra állítja a jelzőbitet.
  • A negyedik blokk 3 0-ból áll, a jelzőbitet (ami 0) 3 – 2 = 1-szer a szám végéhez fűzi (110).
  • Az ötödik blokk egyetlen 0-ból áll, 1-re állítja a jelzőbitet.
  • A hatodik blokk 4 0-ból áll, a jelzőbitet (ami 1) 4 – 2 = 2-szer a szám végéhez fűzi (11011).

Az eredményképpen kapott bináris számnak legfeljebb 30 számjegye lesz. Ha végeztél a folyamattal, konvertáld át a bináris értéket decimálissá, majd írd ki, és ezzel kész!

A bemenet specifikációja

A bemenet legfeljebb 100 tesztesetet tartalmaz. Minden teszteset egy 1-es számrendszerbeli számból áll a fent leírt formában. Egy szám több sorba is átnyúlhat, de egy blokk mindig egy sorban lesz. A tesztesetek végét egy „#” karakter jelzi, amelyet egy szóköz választ el a szám utolsó számjegyétől. A bemenet utolsó tesztesetét egy „~” karakter követi, amely a bemenet végét jelzi.

A kimenet specifikációja

Minden tesztesetre egyetlen sort kell a kimenetre írni, amely a megadott 1-es számrendszerbeli szám decimális értékét tartalmazza.

Példa bemenet

  1. 0 0000 00 000 0 0000 #
  2. 0 000 #
  3. ~
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. 27
  2. 1
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.