結果
問題 | No.604 誕生日のお小遣い |
ユーザー |
![]() |
提出日時 | 2018-08-18 06:10:22 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 458 bytes |
コンパイル時間 | 16,039 ms |
コンパイル使用メモリ | 222,680 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-21 19:25:12 |
合計ジャッジ時間 | 15,774 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
ソースコード
package mainimport "fmt"var A, B, C int64func isSatisfied(years int64) bool {aYearNum := years / Aif aYearNum == 0 || C - (years - aYearNum) + aYearNum - 1 <= 0 {return years >= C}return B >= (C - (years - aYearNum) + aYearNum - 1) / aYearNum}func main() {fmt.Scan(&A, &B, &C)var lb, ub int64 = 0, C + 1for ub - lb > 1 {mid := (ub + lb) / 2if isSatisfied(mid) {ub = mid} else {lb = mid}}fmt.Println(ub)}