Codingame始めました。
内容は「トール(徹)を雷のところまで誘導してあげよう」というもの。
C#を選んだ私はこんな感じになりました。
using System; using System.Linq; using System.IO; using System.Text; using System.Collections; using System.Collections.Generic; /** * Auto-generated code below aims at helping you parse * the standard input according to the problem statement. **/ class Player { static void Main(string[] args) { string[] inputs = Console.ReadLine().Split(' '); int LX = int.Parse(inputs[0]); // the X position of the light of power int LY = int.Parse(inputs[1]); // the Y position of the light of power int TX = int.Parse(inputs[2]); // Thor's starting X position int TY = int.Parse(inputs[3]); // Thor's starting Y position // game loop while (true) { int Energy = int.Parse(Console.ReadLine()); // The level of Thor's remaining energy, representing the number of moves he can still make. string angleX = null; //移動方向:横(E,W) string angleY = null; //移動方向:縦(N,S) int difX = TX - LX; //徹と雷の相対位置:横 int difY = TY - LY; //徹と雷の相対位置:縦 if(difY > 0) { //相対位置:縦がプラスの場合 angleY = "N"; //北へ TY--; //徹の位置:縦を-1 } else if(difY < 0) { //相対位置:縦がマイナスの場合 angleY = "S"; //南へ TY++; //徹の位置:縦を+1 } if(difX > 0) { //相対位置:横がプラスの場合 angleX = "W"; //西へ TX--; //徹の位置:横を-1 } else if(difX < 0) { //相対位置:横がマイナスの場合 angleX = "E"; //東へ TX++; //徹の位置:横を+1 } Console.WriteLine(angleY+angleX); //移動方向出力 } } }
stringの配列だったらもっと楽かなとか、
if文の所を二回書くのめんどくさいので関数化したらよかったとか。
あと何かpointってクラスなかったっけ?
他の人はもっと上手いことやるはず。
マイティ・ソー ブルーレイ+DVDセット [Blu-ray]
- 出版社/メーカー: ウォルト・ディズニー・ジャパン株式会社
- 発売日: 2013/12/18
- メディア: Blu-ray
- この商品を含むブログ (14件) を見る