結果
問題 | No.176 2種類の切手 |
ユーザー |
![]() |
提出日時 | 2019-09-25 20:57:57 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 141 ms / 1,000 ms |
コード長 | 1,416 bytes |
コンパイル時間 | 2,126 ms |
コンパイル使用メモリ | 77,080 KB |
実行使用メモリ | 54,428 KB |
最終ジャッジ日時 | 2024-09-22 15:08:08 |
合計ジャッジ時間 | 7,621 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 29 |
ソースコード
import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);long a = sc.nextLong();long b = sc.nextLong();long t = sc.nextLong();long ans = (long)Math.pow(10, 15);if(a <= 1000000) {for(int i = 0; i < a; i++) {if(b * i >= t) {ans = Math.min(ans, b * i);} else {long c = t - b * i;if(c % a == 0) {ans = t;} else {long d = a * (c / a + 1);ans = Math.min(ans, b * i + d);}}}} else {if(b <= 1000000) {for(int i = 0; i < b; i++) {if(a * i >= t) {ans = Math.min(ans, a * i);} else {long c = t - a * i;if(c % b == 0) {ans = t;} else {long d = b * (c / b + 1);ans = Math.min(ans, a * i + d);}}}} else {for(int i = 0; i < 10000; i++) {if(b * i >= t) {ans = Math.min(ans, b * i);} else {long c = t - b * i;if(c % a == 0) {ans = t;} else {long d = a * (c / a + 1);ans = Math.min(ans, b * i + d);}}}}}System.out.println(ans);}}