Hackerrank – Strange Counter

Hackerrank – Popis problému

Celý popis zadania sa nacháza – Hackerrank.

Riešenie

Vypočítal som čas v cykle, keď je hodnota počítadla 1:

last_time_next_cycle = actual_cycle_time + 2 * (last_time_actual_cycle - last_time_previous_cycle).

Rozdiel medzi cyklom 0 a 1 je 3. Toto platí pre každý test.

Pre každý zadaný čas vypočítam koncový čas v jeho cykle. Vypočítam rozdiel medzi zadaným časom a vypočítaným koncovým časom jeho cyklu. Pridám +1.

Vytvoril som riešenie v týchto programovacích jazykoch:

Všetky riešenia sú dostupné aj na mojom GitHub profile.

Java

JavaScript

Scala

Ruby

Leave a Reply

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *