結果
| 問題 |
No.1150 シュークリームゲーム(Easy)
|
| コンテスト | |
| ユーザー |
yuruhiya
|
| 提出日時 | 2020-08-08 10:23:49 |
| 言語 | Ruby (3.4.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 756 bytes |
| コンパイル時間 | 41 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 20,480 KB |
| 最終ジャッジ日時 | 2024-10-01 07:54:02 |
| 合計ジャッジ時間 | 6,546 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 35 WA * 8 |
コンパイルメッセージ
Syntax OK
ソースコード
n = gets.to_i
s, t = gets.split.map { _1.to_i.pred }
a = gets.split.map &:to_i
x, y = [], []
(1..).each do |i|
break if (s + i) % n == t
x << a[(s + i) % n]
end
(1..).each do |i|
break if (s - i) % n == t
y << a[(s - i) % n]
end
ans = a[s] - a[t]
X, Y = x.size, y.size
if X.even? && Y.even?
ans += x[...X / 2].sum - x[X / 2..].sum
ans += y[...Y / 2].sum - y[Y / 2..].sum
elsif X.even? && Y.odd?
ans += x[...X / 2].sum - x[X / 2..].sum
ans += y[..Y/2].sum - y[Y/2+1..].sum
elsif X.odd? && Y.even?
ans += x[..X/2].sum - x[X/2+1..].sum
ans += y[...Y / 2].sum - y[Y / 2..].sum
else
x1=x[..X/2].sum-x[X/2+1..].sum
x2=x[...X/2].sum-x[X/2..].sum
y1=y[..X/2].sum-y[Y/2+1..].sum
y2=y[...Y/2].sum-y[Y/2..].sum
ans += [x1+y2,x2+y1].max
end
puts ans
yuruhiya