結果

問題 No.2099 [Cherry Alpha B] Time Machine
ユーザー ID 21712
提出日時 2025-05-10 01:26:40
言語 Go
(1.23.4)
結果
AC  
実行時間 132 ms / 2,000 ms
コード長 550 bytes
コンパイル時間 11,866 ms
コンパイル使用メモリ 239,952 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2025-05-10 01:27:03
合計ジャッジ時間 20,607 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 72
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import . "fmt"

func main() {
	var t,x,a,y,b int
	Scan(&t,&x,&a,&y,&b)
	// T = i * a - j * b + k
	// k = T - i * a + j * b
	// min( i * x + j * y + k )
	// min( i * x + j * y + (T - i * a + j * b) )
	// min( i * (x - a) + j * (y + b) + T )
	ans := int(1e18)
	for j := 0; j <= 1e7+1; j++ {
		tmp := t + j * b
		if tmp < 0 {
			continue
		} else if tmp == 0 {
			ans = min(ans, j*y)
		} else if tmp < a || x >= a {
			ans = min(ans, j*y + tmp)
		} else {
			i := tmp / a
			k := tmp % a
			ans = min(ans, i*x+j*y+k)
		}
	}
	Println(ans)
}
0