バックストーリー[これは真実ではありません]
ピアノは次のように設定されています。
しかし、私のピアノでは、黒い鍵がすべて壊れています!
それでも壊れたピアノでコードを弾きたいと思っています。
音楽では、コードは一緒に演奏されるノートのグループです。コードの入力を可能にするために、最初に半音とは何かを定義します。
半音とは何ですか?
半音は、西洋音楽で最も短い距離です。ピアノの上部を見ると、通常は黒鍵から白鍵に、またはその逆に移動できることがわかります。ただし、B
and C
とE
andの間F
には黒いキーはありません。
コードとは?
この課題の目的のために、コードを、特定の数の半音を間に挟んだ一連の音符と定義します。たとえば、4-3-3
コードから始めてみましょうC
(音楽の人にとって、これはFメジャーのV 7コードです)。から始めC
ます。私たちは4つの半音をカウントアップ:C#
、D
、D#
、E
。次のノートがありE
、我々はその後3つの半音をカウントアップ:F
、F#
、G
。次のノートがありG
、我々はその後3つの半音をカウントアップ:G#
、A
、Bb
。だから、私たちは得るC-E-G-Bb
。わーい!しかし、待って... Bb
は黒い鍵であり、それらは壊れています...しかし、から始めるとG
、G-B-D-F
!わーい!
入力
入力は、適切な形式の整数のリストとして提供されます。これは、上記のコードを表します。
出力
出力は、白いキーを使用するだけで開始できるメモのリストになります。キー名はすべて1文字であるため、これは最大7つのノートすべての文字列にすることもできます。空の出力も処理できる必要があります。
テストケース
input -> output // comments
4 3 -> C F G // this is a major triad
3 4 -> D E A // this is a minor triad
4 3 3 -> G // this is the major-minor seventh chord
3 3 3 -> [empty output] // this is the diminished-diminished seventh chord. All of them use black keys
4 4 -> [empty output] // this is an augmented triad
3 3 -> B // this is a diminished triad
1 -> B E // this is just a minor second
11 -> C F // this is just a major seventh
その他のスペック
- 標準の抜け穴は禁止されています
- 入力に少なくとも1つの整数があると想定できます
- すべての整数は負ではなく、12未満であると想定することができます(ピアノは12音ごとに繰り返すため)
- 出力はどの順序でもかまいません
受賞基準
4月15日時点で有効な最短の提出物が受け入れられます。