結果
問題 |
No.176 2種類の切手
|
ユーザー |
![]() |
提出日時 | 2016-10-04 21:03:54 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 534 bytes |
コンパイル時間 | 479 ms |
コンパイル使用メモリ | 57,668 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-21 16:49:57 |
合計ジャッジ時間 | 1,420 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | AC * 25 WA * 4 |
ソースコード
#include <iostream> #include <algorithm> using namespace std; typedef long long ll; #define INF (ll)1e9 ll gcd(ll a,ll b) { while (a) { b %= a; swap(a, b); } return b; } int main() { ll A, B, T; cin >> A >> B >> T; ll lcm = A*B / gcd(A,B); ll tmpT = T; tmpT %= lcm; if (tmpT + lcm <= T)tmpT += lcm; ll over_T = INF; for (int i = 0; i*B <= tmpT + B; i++) { over_T = min(over_T, (A - (tmpT - i*B) % A) % A); } int j = (tmpT / B) + 1; over_T = min(over_T, j*B - tmpT); cout << T + over_T << endl; return 0; }