結果

問題 No.1486 ロボット
ユーザー scrappyscrappy
提出日時 2022-10-17 14:39:58
言語 Go
(1.22.1)
結果
WA  
実行時間 -
コード長 695 bytes
コンパイル時間 14,427 ms
コンパイル使用メモリ 214,060 KB
実行使用メモリ 4,384 KB
最終ジャッジ日時 2023-09-10 13:40:54
合計ジャッジ時間 11,566 ms
ジャッジサーバーID
(参考情報)
judge13 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
4,380 KB
testcase_01 AC 1 ms
4,376 KB
testcase_02 AC 1 ms
4,380 KB
testcase_03 AC 1 ms
4,380 KB
testcase_04 AC 2 ms
4,380 KB
testcase_05 AC 2 ms
4,376 KB
testcase_06 AC 1 ms
4,380 KB
testcase_07 WA -
testcase_08 AC 1 ms
4,376 KB
testcase_09 AC 2 ms
4,376 KB
testcase_10 AC 1 ms
4,376 KB
testcase_11 AC 1 ms
4,376 KB
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import (
	"fmt"
)

func main() {
	var A, B, C, D, E int
	fmt.Scan(&A, &B, &C, &D, &E)

// 	now := time.Now()
// 	defer func() { fmt.Println(time.Since(now)) }()

	f, s := true, true
	ft, st := A, C
	n := 0
	for e := E; e > 0; {
		d := ft
		if st < d {
			d = st
		}
		if e < d {
			d = e
		}

		//fmt.Fprintf(os.Stderr, "%v: ft=%v, st=%v\n", E-e, ft, st)
		if f && s {
			n += d
		}

		ft -= d
		st -= d
		e -= d

		if !f && !s && ft == 0 && st == 0 {
			r := E - e
			n += n * e / r
			e = e % r
		}

		if ft == 0 {
			f = !f
			if f {
				ft = A
			} else {
				ft = B
			}
		}

		if st == 0 {
			s = !s
			if s {
				st = C
			} else {
				st = D
			}
		}
	}

	fmt.Println(n)
}
0