六角形のテトロミノ 横へな2017.4.1 問題

問題の概要

a b c d e f g h i j k l m n o p q r s t u v w

六角形のマスを四枚つなげたら出来る図形は下表の通り10通りある。ただし:

で。
右図のようにマス目に名前がついている。
マス目を4つ指定するので、下表のいずれに該当するのか……だと大変なので、 Bなのか、あるいは Dなのか、Iなのか、それ以外なのかを判断するプログラムを書け。

名前
B
D
I
J
名前
L
N
O
S
名前
Y
Z

入力

入力は
glmq
こんな感じ。
マス目の名前が区切り文字なしで並んでいる。

出力

出力は簡単。B, D, I のいずれかを出力する。

先ほどの入力の場合、
B
と出力すればよい。 ただし、
fhoq
のように、B, D, I のいずれにも該当しない場合は - を出力すること。

補足

サンプルデータ

# 入力 期待 状況へのリンク
0 glmq B リンク
1 fhoq - リンク
2 lmpr - リンク
3 glmp - リンク
4 dhkl - リンク
5 glpq D リンク
6 hlmq - リンク
7 eimq I リンク
8 cglp - リンク
9 chlq - リンク
10 glqr - リンク
11 cdef - リンク
12 hijk - リンク
13 kpqu B リンク
14 hklm B リンク
15 mqrw B リンク
16 nrvw B リンク
17 abfj B リンク
18 abcf B リンク
19 mrvw D リンク
20 ptuv D リンク
21 lmnr D リンク
22 hklp D リンク
23 himr D リンク
24 dhil D リンク
25 hlpt I リンク
26 stuv I リンク
27 bglq I リンク
28 glmn - リンク
29 fghm - リンク
30 cdgk - リンク
31 lpst - リンク
32 imrw - リンク
33 dinr - リンク
34 cdin - リンク
35 eghi - リンク
36 cdeg - リンク
37 bgko - リンク
38 eimr - リンク
39 jotu - リンク
40 kotu - リンク
41 lqtu - リンク
42 cdim - リンク
43 klot - リンク
44 kloq - リンク
45 kmpq - リンク
46 qrvw - リンク
47 mnqr - リンク
48 kopt - リンク
49 mnpq - リンク
50 bfko - リンク
51 chin - リンク
52 hmnq - リンク
53 nqrw - リンク
54 bchi - リンク
55 inrw - リンク
56 cfgj - リンク
57 jnpv - リンク
58 flmp - リンク
59 adpw - リンク
60 eilr - リンク
61 bejv - リンク
62 enot - リンク
63 fghq - リンク
64 cjms - リンク
65 elov - リンク
66 chlm D リンク
67 acop - リンク
68 finr - リンク
69 qstu - リンク
70 abdq - リンク
71 jkln - リンク
72 fjkn - リンク
73 ijmn - リンク
74 flqr - リンク

C/C++/Java 用のテストデータ