0104 - Magical Tiles
#include <iostream> #include <string> using namespace std; void Slove(int H, int W) { string figure[H]; bool flg[H][W]; for (int i=0; i<H; ++i) { cin >> figure[i]; for (int j=0; j<W; ++j) flg[i][j]=false; } int current_x=0, current_y=0; while (figure[current_y][current_x]!='.' && !flg[current_y][current_x]) { flg[current_y][current_x]=true; if (figure[current_y][current_x] == '>') ++current_x; else if (figure[current_y][current_x] == 'v') ++current_y; else if (figure[current_y][current_x] == '<') --current_x; else if (figure[current_y][current_x] == '^') --current_y; } if (figure[current_y][current_x] == '.') cout << current_x << " " << current_y << endl; else cout << "LOOP" << endl; } int main(void) { int H, W; while ( cin >> H >> W && (H || W) ) Slove(H,W); return 0; }
またまた、やるだけ。