結果
問題 | No.172 UFOを捕まえろ |
ユーザー |
![]() |
提出日時 | 2019-02-17 01:30:17 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 635 bytes |
コンパイル時間 | 1,634 ms |
コンパイル使用メモリ | 159,480 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-09-25 04:03:41 |
合計ジャッジ時間 | 2,376 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
ソースコード
#include <bits/stdc++.h> using namespace std; int main() { // 1. 入力情報取得. int x, y, r; cin >> x >> y >> r; x = abs(x); y = abs(y); // 2. 結界の最小値を算出. // ベクトル(-1, 1) の方向に従って, UFO を y軸上 に移動. // -> 座標(0, x + y) に移動したことになる. y += x; // 半径 r の √2 倍 を考慮して, UFO の外側に来る y軸上の自然数を計算. // -> この値が, マンハッタン距離に相当する筈. int ans = y + ceil(sqrt(2.0) * r); // 3. 出力. cout << ans << endl; return 0; }