結果
問題 |
No.176 2種類の切手
|
ユーザー |
|
提出日時 | 2015-04-03 00:06:18 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 649 bytes |
コンパイル時間 | 647 ms |
コンパイル使用メモリ | 58,004 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-10-08 01:53:54 |
合計ジャッジ時間 | 1,641 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 27 WA * 2 |
ソースコード
#include<iostream> #include<algorithm> using namespace std; long long A, B, T; void read() { cin >> A >> B >> T; } long long gcd(long long a, long long b) { return b == 0 ? a : gcd(b, a % b); } long long lcm(long long a, long long b) { return a / gcd(a, b) * b; } void work() { long long t = T % lcm(A, B); long long minV = 1LL << 60; for (int nB = (t + B - 1) / B; nB >= 0; --nB) { int remainT = t - nB * B; int nA = max(0LL, remainT + A - 1) / A; minV = min(minV, nA * A + nB * B); } cout << minV + (T - t) << endl; } int main() { read(); work(); return 0; }