結果
問題 | No.1034 テスターのふっぴーさん |
ユーザー |
|
提出日時 | 2020-04-25 00:08:03 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 791 bytes |
コンパイル時間 | 679 ms |
コンパイル使用メモリ | 67,148 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-15 04:00:36 |
合計ジャッジ時間 | 1,489 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 |
ソースコード
#include <iostream> #include <algorithm> using namespace std; int main() { long long q, n, i, j; cin >> q; while (q--) { long long ans = 0; cin >> n >> i >> j; long long dep = min(i - 0, min(j - 0, min(n-1-i, n-1-j))) + 1; long long q = (n-1)* 4, nowl = n - (dep-1) * 2; // for (int i = 1; i < dep; ++i) ans += q, q -= 2*4; q = (n-1)*4 - 8 * (dep-2); ans = ((n-1)*4 + q) * (dep-1) / 2; q = (n-1)*4 - 8*(dep-1); if (i == dep - 1) ans += j - (dep-1); else if (j == dep - 1) ans += q - (i - (dep-1)); else if (i == dep-1 + nowl-1) ans += q - (nowl-1) - (j - (dep-1)); else if (j == dep-1 + nowl-1) ans += nowl-1 + (i - (dep-1)); cout << ans << endl; } return 0; }