結果
問題 | No.604 誕生日のお小遣い |
ユーザー |
![]() |
提出日時 | 2019-05-20 17:46:45 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 136 ms / 1,000 ms |
コード長 | 1,002 bytes |
コンパイル時間 | 2,572 ms |
コンパイル使用メモリ | 74,880 KB |
実行使用メモリ | 46,932 KB |
最終ジャッジ日時 | 2024-11-21 19:29:34 |
合計ジャッジ時間 | 6,251 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
ソースコード
import java.math.BigInteger;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner stdin = new Scanner(System.in);long a = stdin.nextLong();long b = stdin.nextLong();long c = stdin.nextLong();BigInteger A = new BigInteger(String.valueOf(a));BigInteger B = new BigInteger(String.valueOf(b));BigInteger C = new BigInteger(String.valueOf(c));long left = -1;long right = c + 1;while (right - left > 1) {// long sum = b * (mid / a) + (mid - mid / a);long mid = left + (right - left) / 2;BigInteger MID = new BigInteger(String.valueOf(mid));BigInteger SUM = B.multiply(MID.divide(A)).add(MID.subtract(MID.divide(A)));if (SUM.compareTo(C) >= 0) {right = mid;} else {left = mid;}}System.out.println(right);}}