コードを学ぼう2>⑥配列>⑥島を作る(大苦戦)
コードを学ぼう2>⑥配列>⑥島を作る
ここで大苦戦しました。
配列になってから、配列そのものの概念よりもその応用が多いような気がします。
そのため、このPlaygroundsの世界特有の難しさが際立って感じられます。
この1問で丸4日かかりました。
いや、4日半だったかもしれません。
苦心の結果ですが、答えをそのまま書いてしまってはあまりにも無粋なので「コードを学ぼう1」のアルゴリズムの右手法などで出てきた「疑似コード」にしてみました。
日本語にしただけなんですけどね。
それではまた。
// 2-6-6島を作る
// コードを学ぼう2>⑥配列>⑥島を作る
// 7月20-24日深夜2時半過ぎ(25日)、やっとこの難問が解けた!飯もほとんど食わず酒も飲みたいと思わなかった。ただひたすら今日こそはこの問題を解きたかった。自分で作ったスケジュールより2日遅れている昨今、今日こそは解きたかった。
// 決め手は「コードを学ぼう2>⑥配列>⑤配列に追加する」を2回復習したことだった。答えはそこにあった。
定数 全座標 = 世界.全ての可能な座標
// 空の[座標]タイプの配列を2つ作成せよ
変数 島: [座標] = []
変数 海: [座標] = []
for 座標ループ配列 in 全座標 {
if 座標ループ配列.列 > 2 && 座標ループ配列.列 < 9 && 座標ループ配列.行 > 2 && 座標ループ配列.行 < 9 {
// I(blockSet) love(append) you(coordinate).
島配列.追加(座標ループ配列)
} else {
// I(blockSet) love(append) you(coordinate).
海配列.追加(座標ループ配列)
}
}
// 島配列にブロックを設置せよ
for 座標ループ配列 in 島配列 {
世界.設置(ブロック(), at: 座標ループ配列)
}
// 海配列に水を設置せよ
for 座標ループ配列 in 海配列 {
世界.アイテム撤去(at: 座標ループ配列)
世界.設置(水(), at: 座標ループ配列)
}
ここで大苦戦しました。
配列になってから、配列そのものの概念よりもその応用が多いような気がします。
そのため、このPlaygroundsの世界特有の難しさが際立って感じられます。
この1問で丸4日かかりました。
いや、4日半だったかもしれません。
苦心の結果ですが、答えをそのまま書いてしまってはあまりにも無粋なので「コードを学ぼう1」のアルゴリズムの右手法などで出てきた「疑似コード」にしてみました。
日本語にしただけなんですけどね。
それではまた。
// 2-6-6島を作る
// コードを学ぼう2>⑥配列>⑥島を作る
// 7月20-24日深夜2時半過ぎ(25日)、やっとこの難問が解けた!飯もほとんど食わず酒も飲みたいと思わなかった。ただひたすら今日こそはこの問題を解きたかった。自分で作ったスケジュールより2日遅れている昨今、今日こそは解きたかった。
// 決め手は「コードを学ぼう2>⑥配列>⑤配列に追加する」を2回復習したことだった。答えはそこにあった。
定数 全座標 = 世界.全ての可能な座標
// 空の[座標]タイプの配列を2つ作成せよ
変数 島: [座標] = []
変数 海: [座標] = []
for 座標ループ配列 in 全座標 {
if 座標ループ配列.列 > 2 && 座標ループ配列.列 < 9 && 座標ループ配列.行 > 2 && 座標ループ配列.行 < 9 {
// I(blockSet) love(append) you(coordinate).
島配列.追加(座標ループ配列)
} else {
// I(blockSet) love(append) you(coordinate).
海配列.追加(座標ループ配列)
}
}
// 島配列にブロックを設置せよ
for 座標ループ配列 in 島配列 {
世界.設置(ブロック(), at: 座標ループ配列)
}
// 海配列に水を設置せよ
for 座標ループ配列 in 海配列 {
世界.アイテム撤去(at: 座標ループ配列)
世界.設置(水(), at: 座標ループ配列)
}
コメント
コメントを投稿