【早解16】アルファベットの穴の数 (paizaランク D 相当) 解答例 – PHP編【Dランク早解きセット】
【Dランク早解きセット】 > 【早解16】アルファベットの穴の数 (paizaランク D 相当)
※リンク先へ移動する為には「paiza」へのログインが必要です。
解答例
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php $zero = explode(", ","C, E, F, G, H, I, J, K, L, M, N, S, T, U, V, W, X, Y, Z"); $one = explode(", ","A, D, O, P, Q, R"); $two = explode(", ","B"); $array = array(); foreach($zero as $value){ $array[$value] = 0; } foreach($one as $value){ $array[$value] = 1; } foreach($two as $value){ $array[$value] = 2; } ksort($array); //print_r($array); $test = trim(fgets(STDIN)); echo $array[$test]; ?> |
・0個 : C, E, F, G, H, I, J, K, L, M, N, S, T, U, V, W, X, Y, Z
・1個 : A, D, O, P, Q, R
・2個 : B
となっています。方針としては連想配列を使って解答を導きます。連想配列のキーに「A~Z」、値に「穴の数」を入れ、アルファベットをインデックスキーの当てはめれば、穴の数を検索できるようにします。
[A] => 1
[B] => 2
[C] => 0
[D] => 1
[E] => 0
[F] => 0
[G] => 0
[H] => 0
[I] => 0
[J] => 0
[K] => 0
[L] => 0
[M] => 0
[N] => 0
[O] => 1
[P] => 1
[Q] => 1
[R] => 1
[S] => 0
[T] => 0
[U] => 0
[V] => 0
[W] => 0
[X] => 0
[Y] => 0
[Z] => 0
[B] => 2
[C] => 0
[D] => 1
[E] => 0
[F] => 0
[G] => 0
[H] => 0
[I] => 0
[J] => 0
[K] => 0
[L] => 0
[M] => 0
[N] => 0
[O] => 1
[P] => 1
[Q] => 1
[R] => 1
[S] => 0
[T] => 0
[U] => 0
[V] => 0
[W] => 0
[X] => 0
[Y] => 0
[Z] => 0
こんな感じの連想配列が作れれば答えを検索できます。今回は「explode()」と「foreach」を使って連想配列を作りました(*’ω’*)
