提出 #4210765
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
#define reg register
#define rep(i, a, b) for (reg int i = (int) a; i <= (int) b; i++)
#define rev(i, a, b) for (reg int i = (int) a; i >= (int) b; i--)
#define _r read()
inline int read();
int main() {
unsigned long long k = _r, a = _r, b = _r;
if (b <= a + 1) {
cout << k + 1 << endl;
return 0;
}
if (k < a - 1) {
cout << k + 1 << endl;
return 0;
}
k -= a - 1;
a += (k / 2) * (b - a) + (k % 2);
cout << a << endl;
return 0;
}
inline int read() {
reg int a = 0, c = getchar(), s = c == '-';
while (!isdigit(c)) c = getchar();
while (isdigit(c)) a = (a << 1) + (a << 3) + (c ^ 48), c = getchar();
return s ? -a : a;
}
提出情報
ジャッジ結果
| セット名 |
Sample |
All |
| 得点 / 配点 |
0 / 0 |
400 / 400 |
| 結果 |
|
|
| セット名 |
テストケース |
| Sample |
s1.txt, s2.txt, s3.txt |
| All |
01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, s1.txt, s2.txt, s3.txt |
| ケース名 |
結果 |
実行時間 |
メモリ |
| 01.txt |
AC |
1 ms |
256 KiB |
| 02.txt |
AC |
1 ms |
256 KiB |
| 03.txt |
AC |
1 ms |
256 KiB |
| 04.txt |
AC |
1 ms |
256 KiB |
| 05.txt |
AC |
1 ms |
256 KiB |
| 06.txt |
AC |
1 ms |
256 KiB |
| 07.txt |
AC |
1 ms |
256 KiB |
| 08.txt |
AC |
1 ms |
256 KiB |
| 09.txt |
AC |
1 ms |
256 KiB |
| 10.txt |
AC |
1 ms |
256 KiB |
| 11.txt |
AC |
1 ms |
256 KiB |
| 12.txt |
AC |
1 ms |
256 KiB |
| s1.txt |
AC |
1 ms |
256 KiB |
| s2.txt |
AC |
1 ms |
256 KiB |
| s3.txt |
AC |
1 ms |
256 KiB |