Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
AL_06_03 - Doremifasola |
Doremifasola
Dore, Mi i Fasola są bardzo muzykalni, Dore komponuje, Fasola gra na pianinie, a mała Mi śpiewa. Dore ostatnio skomponowała kilka utworów muzycznych, których Fasola chce nauczyć się grać na pianinie. Dore jednak komponując zapisuje utwory w notacji literowej (C, D, E, F, G, A, H), a Fasola umie grać tylko z nut. Ponieważ niektóre utwory Dore są bardzo długie, Fasola postanowił zlecić napisanie programu, który zapis literowy zamieni na zapis nutowy. Zadanie jest nieco ułatwione, ponieważ Dore komponuje w tonacji E-dur i w metrum 4/8, tzn. na każdy takt przypadają cztery ósemki. Podstawowa gama E-dur składa się z nut: E Fis Gis A H Cis Dis E, ale Dore nuty Fis, Gis, Cis, Dis zapisuje używając krzyżyka: F#, G#, C#, D# i nie korzysta z górnego E. Komponując wykorzystuje zatem siedem nut: E F# G# A H C# D#, które Fasola zapisuje na swojej pięciolinii tak:
| | | | | |------------------------|---------------|\-------|------------------------|------------------------| | | |\ | | | | |------------------------|---|\----|---#o|--------|------------------------|------------------------| | |\ | | #o| | | | |---------------|\----|--|--o|--------------------|------------------------|------------------------| | |\ | o| | | | | |---|\----|---#o|--------|------------------------|------------------------|------------------------| | | #o| | | | | |--o|--------------------|------------------------|------------------------|------------------------| | | | | |
Jedenaście wierszy, każdy wiersz złożony ze 101 znaków (|, ,-) składają się na pięciolinię, która ma cztery takty. Każdy takt to 24 znaki w wierszu, w każdym takcie cztery nuty, każda nuta (zbudowana ze znaków: o,|,\,#) umiejscowiona jest na pięciolinii w zależności od jej wartości. Jedna pięciolinia przeznaczona jest dla co najwyżej 16 nut, w zależności od potrzeb kolejną należy narysować bezpośrednio pod poprzednią.
Wejście
Wejście składa się z dwóch wierszy. W pierwszym wierszu liczba nut (1 ≤ n < 105) utworu Dore.
W wierszu drugim literowy zapis n nut z gamy E-dur: E, F#, G#, A, H, C#, D#.
Wyjście
Zapis nutowy zgodny z oczekiwaniami Fasoli.
Uwaga: Ostatnim znakiem wyjścia jest znak końca linii.
Przykład
Wejście
42
E F# G# A H C# D# D# C# H A G# F# E E F# G# A H C# D# D# C# H A G# F# E E F# G# A H C# D# D# C# H A G# F# E
Wyjście
| | | | | |------------------------|---------------|\----|\-|------------------------|------------------------| | | |\ | | | |\ | | |------------------------|---|\----|---#o|---#o|--|---|-----|\-------------|------------------------| | |\ | | #o| | #o| | |\ | | |---------------|\----|--|--o|--------------------|--------o|-----|-----|\-|------------------------| | |\ | o| | | o| | | |\ |\ | |---|\----|---#o|--------|------------------------|-------------------#o|--|---|-----|\----|\----|--| | | #o| | | | #o| | | #o| | |--o|--------------------|------------------------|------------------------|--------o|----o|--------| | | | | | | | | | | |------------------------|---|\----|\-------------|------------------------|------------------------| | |\ | | | |\ | | | |---------------|\----|--|-#o|---#o|-----|-----|\-|------------------------|------------------------| | |\ | #o| | #o| | | |\ | |\ | |---|\----|----o|--------|--------------------o|--|---|-----|\-------------|---------------|\----|--| | | o| | | o| | |\ | |\ | o| | |-#o|--------------------|------------------------|-------#o|-----|-----|\-|---|\----|---#o|--------| | | | #o| | | | #o| | |------------------------|------------------------|--------------------o|--|--o|--------------------| | | | | | | | | | | |---------------|\----|\-|------------------------|------------------------|------------------------| | |\ | | | |\ | | | |---|\----|---#o|---#o|--|---|-----|\-------------|------------------------|------------------------| | | #o| | #o| | |\ | | | |--o|--------------------|--------o|-----|-----|\-|------------------------|------------------------| | | o| | | |\ | | |------------------------|-------------------#o|--|---|-----|\-------------|------------------------| | | | #o| | | | |------------------------|------------------------|--------o|--------------|------------------------| | | | | |
Dodane przez: | Mariusz Śliwiński |
Data dodania: | 2013-05-01 |
Limit czasu wykonania programu: | 1s-2s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM64 GOSU |
Pochodzenie: | ALGOLIGA |