Tulis program terpendek yang menghasilkan tab gitar untuk akord yang diberikan sebagai input.
Agar gitaris di antara Anda tidak memiliki keunggulan, dan untuk membuatnya deterministik (dan mungkin lebih mudah untuk dikodekan), berikut adalah satu - satunya bentuk akord yang diotorisasi:
Major chords:
E F F# G G# A A# B C C# D D#
e 0---1---2---3---4---0---1---2---3---4---5---6---
B 0---1---2---3---4---2---3---4---5---6---7---8---
G 1---2---3---4---5---2---3---4---5---6---7---8---
D 2---3---4---5---6---2---3---4---5---6---7---8---
A 2---3---4---5---6---0---1---2---3---4---5---6---
E 0---1---2---3---4---0---1---2---3---4---5---6---
Minor chords:
Em Fm F#m Gm G#m Am A#m Bm Cm C#m Dm D#m
e 0---1---2---3---4---0---1---2---3---4---5---6---
B 0---1---2---3---4---1---2---3---4---5---6---7---
G 0---1---2---3---4---2---3---4---5---6---7---8---
D 2---3---4---5---6---2---3---4---5---6---7---8---
A 2---3---4---5---6---0---1---2---3---4---5---6---
E 0---1---2---3---4---0---1---2---3---4---5---6---
Perhatikan bahwa 5 akord pertama dan 7 akord terakhir dari setiap seri memiliki bentuk yang berbeda.
Semua akor adalah akord mayor atau minor sederhana (tidak ada 7 atau variasi lainnya).
Anda harus merawat flat juga. Peringatan:
A# = Bb
C# = Db
D# = Eb
F# = Gb
G# = Ab
B#, Cb, E# and Fb are not used
Keluaran harus menyertakan kolom pertama dengan nama kabel, seperti yang ditunjukkan di atas. Itu tidak harus menyertakan nama chord di atas. Akord harus dipisahkan oleh 3 -
seperti yang ditunjukkan di atas. 3 final -
adalah opsional.
Input adalah string yang terdiri dari nama akor, dipisahkan oleh spasi.
Contoh input adalah:
Bm Gb A E G D Em F#
dan output yang sesuai adalah:
e 2---2---0---0---3---5---0---2---
B 3---2---2---0---3---7---0---2---
G 4---3---2---1---4---7---0---3---
D 4---4---2---2---5---7---2---4---
A 2---4---0---2---5---5---2---4---
E 2---2---0---0---3---5---0---2---