เขียนโปรแกรมที่สั้นที่สุดที่สร้างแท็บกีต้าร์สำหรับคอร์ดที่ได้รับเป็นอินพุต
เพื่อให้มือกีต้าร์ในหมู่คุณไม่มีข้อได้เปรียบและเพื่อให้มันกำหนดขึ้น (และอาจง่ายกว่าในการเขียนโค้ด) นี่คือรูปแบบเดียวของคอร์ดที่ได้รับอนุญาต:
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---
โปรดทราบว่า 5 คอร์ดแรกและ 7 คอร์ดสุดท้ายของแต่ละชุดมีรูปแบบที่แตกต่างกัน
คอร์ดทั้งหมดเป็นคอร์ดหลักหรือคอร์ดเล็กน้อย (ไม่มี 7 หรือรูปแบบอื่น ๆ )
คุณควรดูแลแฟลตด้วย การแจ้งเตือน:
A# = Bb
C# = Db
D# = Eb
F# = Gb
G# = Ab
B#, Cb, E# and Fb are not used
เอาต์พุตจะต้องมีคอลัมน์แรกที่มีชื่อสายไฟดังที่แสดงไว้ด้านบน มันไม่จำเป็นต้องรวมชื่อคอร์ดด้านบน คอร์ดจะต้องคั่นด้วย 3 -
ตามที่แสดงด้านบน 3 ขั้นสุดท้าย-
เป็นตัวเลือก
อินพุตเป็นสตริงที่ประกอบด้วยชื่อคอร์ดคั่นด้วยช่องว่าง
ตัวอย่างอินพุตคือ:
Bm Gb A E G D Em F#
และผลลัพธ์ที่สอดคล้องกันคือ:
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---