結果
問題 |
No.208 王将
|
ユーザー |
|
提出日時 | 2015-05-23 23:30:36 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 716 bytes |
コンパイル時間 | 329 ms |
コンパイル使用メモリ | 58,788 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-06 06:23:14 |
合計ジャッジ時間 | 1,004 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 22 WA * 1 |
ソースコード
#include <stdio.h> #include <iostream> #include <chrono> using namespace std; struct Point { int x; int y; }; Point start = { 0, 0 }; Point goal; Point obst; int main(int argc, char *argv[]) { std::ios::sync_with_stdio(false); std::cin.tie(0); int cnt = 0; cin >> goal.x >> goal.y >> obst.x >> obst.y; /* 斜めに進んで残った分を真っすぐ進む */ if (goal.x >= goal.y) { cnt += goal.y + (goal.x - goal.y); } else { cnt += goal.x + (goal.y - goal.x); } /*斜めに進んで障害物にぶつかる場合はコスト+1(真っすぐ進む場合は変わらない)*/ if ((obst.x < goal.x) && (obst.y < goal.y)) { if (obst.x == obst.y) { cnt++; } } cout << cnt << endl; }