幼稚園のクラスでは、植物を育てることについて学んでいます。 先生は、クラスの子どもたちに種を渡し、土に植えて育ててもらうのがよい考えだと思いました。 そこで、子どもたちは窓辺に小さなカップを並べ、それぞれのカップに1種類ずつ植物を植えました。 子どもたちは、用意された4種類の種、grass・clover・radishes・violetsの中から、好きなものを選びました。
この課題では、図をもとに、幼稚園のクラスのどの子どもがどの植物を担当しているかを判定します。
クラスには12人の子どもがいます:
4種類の種が植えられています:
| 植物 | 図での表記 |
|---|---|
| Grass | G |
| Clover | C |
| Radish | R |
| Violet | V |
それぞれの子どもには4つのカップが与えられ、各列に2つずつ置かれます:
[window][window][window]
........................ # each dot represents a cup
........................
先生は、子どもたちの名前のアルファベット順にカップを割り当てます。つまり、Aliceが最初で、Larryが最後になります。
次の図は、Aliceの植物を表す例です:
[window][window][window]
VR......................
RG......................
窓に一番近い1列目には、violetとradishがあります。 2列目にはradishとgrassがあります。
プログラムには、窓に一番近い列から始めて、左から右へと植物が与えられます。これをもとに、どの植物がどの子どものものかを判定できるようにします。
たとえば、庭が次のようになっているとします:
[window][window][window]
VRCGVVRVCGGCCGVRGCVCGCGV
VRCCCGCRRGVCGCRVVCVGCGCV
このとき、Aliceの植物を尋ねられると、次のように返します:
一方、Bobの植物を尋ねると、次のようになります: