Ein Gitarren-Griffbrett-Diagramm sieht folgendermaßen aus:
0 1 2 3 4 5 6 7 8 9 10 11 12 <- Fret number (0 means it's open)
|-E--F--F#-G--G#-A--A#-B--C--C#-D--D#-E
|-B--C--C#-D--D#-E--F--F#-G--G#-A--A#-B
|-G--G#-A--A#-B--C--C#-D--D#-E--F--F#-G
|-D--D#-E--F--F#-G--G#-A--A#-B--C--C#-D
|-A--A#-B--C--C#-D--D#-E--F--F#-G--G#-A
|-E--F--F#-G--G#-A--A#-B--C--C#-D--D#-E
Wie Sie sehen können, ist der erste geöffnete String (von oben) ein E. Der erste Bund auf der ersten Saite ist ein F. Der vierte Bund auf der dritten Saite ist a B. Beachten Sie, dass die erste Note der nullte Bund ist, nicht der erste.
Dies kann mit Zahlen im Format geschrieben werden string, fret. Die Zeichenfolgen sind von oben nach unten von 1 bis 6 nummeriert. Die Bünde sind von links nach rechts von 0 bis 12 nummeriert. Der erste Eist also 1, 0. Einige andere Beispiele:
1, 0 --> E
1, 1 --> F
3, 5 --> C
5, 1 --> A#
6, 6 --> A#
Herausforderung:
Nehmen Sie NZahlenpaare ( sund f) und geben Sie eine begrenzte Notenfolge aus.
- Die Eingabe kann in jedem geeigneten Format erfolgen. Tupel, 2D-Matrix, zwei getrennte Listen, eine verwobene Liste (String, Bund, String, Bund ...) usw.
- Der Ausgabeton sollte getrennt sein, das Trennzeichen ist jedoch optional (Komma, Leerzeichen, Bindestrich ...). Die Ausgabe kann in Groß- oder Kleinschreibung erfolgen.
s(für Zeichenkette) liegt im Bereich[1, 6](Sie können wählen, ob i 0 indiziert werden soll)f(für Bund) wird im Bereich sein[0, 12]
Testfälle und Beispiele:
1 4 5 2 1 3 <- String
4 2 6 3 5 1 <- Fret
G# E D# D A G#
6 2 3 1 4 2 3 2 2 2 6 5 2
0 1 2 3 4 5 6 7 8 9 10 11 12
E C A G F# E C# F# G G# D G# B
3 3 3 3 3 3 3 3 3 3 3 3 3 <- String
0 3 5 0 3 6 5 0 3 5 3 0 0 <- Fret
G A# C G A# C# C G A# C A# G G
// The same test case, but different input and output format:
(3,0)(3,3)(3,5)(3,3)(3,6)(3,5)(3,0)(3,3)(3,5)(3,3)(3,0)(3,0)
G,A#,C,G,A#,C#,C,G,A#,C,A#,G,G
Viel Glück und viel Spaß beim Golfen!