paizaの練習問題を解く 座標系での規則的な移動 Go編
こんにちは、ナナオです。 前回に引き続き競プロを実施していきたいと思います。 今回の問題は以下です。 座標系での規則的な移動 | レベルアップ問題集 | プログラミング学習サイト【paizaラーニング】 実装 最初は以下のように実装しました。 package main import "fmt" func main(){ var x, y, n int fmt.Scan(&x, &y, &n) // stepは偶数の時に増える // 方角が変わるのはc数だけ移動したとき step := 0 c := 0 d := "E" for i := 0; i < n; i++ { if i % 2 == 0 { step++ } // cの数だけ移動していた場合、現在の方角を変える if i == c { switch d { case "E": d = "S" case "W": d = "N" case "N": d = "E" case "S": d = "W" } } switch d { case "E": x++ case "W": x-- case "N": y++ case "S": y-- } } fmt.Println(x, y) } ですが、これだとcに何を入れればいいのかわからず断念してしまいました。 ...