結果
問題 | No.1034 テスターのふっぴーさん |
ユーザー |
|
提出日時 | 2020-04-24 22:22:14 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 1,312 bytes |
コンパイル時間 | 1,537 ms |
コンパイル使用メモリ | 167,940 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-15 03:05:29 |
合計ジャッジ時間 | 2,413 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 |
ソースコード
#include <bits/stdc++.h>#define rep(i, n) for (int i = 0; i < n; i++)using namespace std;typedef long long ll;int main() {int Q;cin >> Q;rep(q, Q) {ll N, I, J, ans;cin >> N >> I >> J;if (I < N / 2) {if (J < N / 2) {ll a = min(I, J);// sum (4(N-2a+1))ans = 4 * N * a - 4 * a * (a + 1) + 4 * a;if (I > a) ans += a - I + 4 * (N - 1 - a - a);else ans += J - a;} else {ll a = min(I, N - 1 - J);ans = 4 * N * a - 4 * a * (a + 1) + 4 * a + N - a - a - 1;if (I > a) ans += I - a;else ans -= N - 1 - J - a;}} else {if (J < N / 2) {ll a = min(N - 1 - I, J);ans = 4 * N * a - 4 * a * (a + 1) + 4 * a + (N - a - a - 1) * 3;if (N - 1 - I > a) ans += N - 1 - I - a;else ans -= J - a;} else {ll a = min(N - 1 - I, N - 1 - J);ans = 4 * N * a - 4 * a * (a + 1) + 4 * a + (N - a - a - 1) * 2;if (N - 1 - I > a) ans -= N - 1 - I - a;else ans += N - 1 - J - a;}}cout << ans << "\n";}}