Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
WIPING2C - System silniowy |
Zadanie eliminacyjne w konkursie WIPING2 organizowanym przez
Wydział Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie
System silniowy
Silniowym systemem liczenia nazywamy taki system pozycyjny, w którym wagi kolejnych pozycji nie są potęgami podstawy systemu liczenia, a silniami kolejnych liczb naturalnych. Oznacza to, że waga najmłodszej cyfry wynosi 1, a cyfr kolejnych odpowiednio 2, 6, 24, itd. Aby zapis liczby w takim systemie był jednoznaczny, wprowadza się dodatkowe ograniczenie mówiące, że największą cyfrą, jaka może wystąpić na miejscu o numerze n (licząc od 1 i od prawej) jest n, tzn. na pozycji o wadze 1 (pozycja nr 1) może pojawić się wyłącznie 0 lub 1, na pozycji o wadze 2 (pozycja nr 2) może wystąpić cyfra od 0 do 2, na pozycji o wadze 6 (pozycja nr 3) mogą wystąpić cyfry 0, 1, 2 i 3, itd.
Liczby w systemie silniowym bywają oznaczane przyrostkiem w postaci wykrzyknika umieszczanego w indeksie dolnym.
Interpretacja wartości liczby zapisanej w systemie silniowym przebiega w identyczny sposób jak w każdym systemie pozycyjnym, pamiętać tylko należy o osobliwych wartościach wag, np.
211! = 2 * 6 + 1 * 2 + 1 * 1 = 15
Twoim zadaniem jest napisanie programu konwertującego liczby w zapisie dziesiętnym na liczby w systemie silniowym.
Wejście
- jeden wiersz tekstu zawierający liczbę całkowitą z przedziału <0..3000000>
Wyjście
- jeden wiersz tekstu zawierający liczbę odczytaną z wejścia, zaprezentowaną w systemie silniowym (wyłącznie cyfry, bez przyrostka '!')
Przykład
Wejście:
15
Wyjście:
211
Informacje dodatkowe
-
program zostanie uruchomiony 10 razy dla różnych zestawów danych
-
każde poprawne rozwiązanie daje 10% punktacji zadania
-
zadanie ma wartość punktową 4,0
Dodane przez: | Sławomir Wernikowski |
Data dodania: | 2014-01-25 |
Limit czasu wykonania programu: | 0.100s |
Limit długości kodu źródłowego | 1500B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | C CSHARP C++ 4.3.2 CPP C99 JAVA PAS-GPC PAS-FPC PERL PERL6 PHP PYTHON PYTHON3 PY_NBC RUBY |