結果
問題 | No.457 (^^*) |
ユーザー |
![]() |
提出日時 | 2020-01-25 01:56:06 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 115 ms / 2,000 ms |
コード長 | 562 bytes |
コンパイル時間 | 506 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 12,672 KB |
最終ジャッジ日時 | 2024-09-14 03:58:41 |
合計ジャッジ時間 | 3,063 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 20 |
コンパイルメッセージ
Syntax OK
ソースコード
S = gets.chompC = '(*^)'C_MIN = Array.new(4){ Array.new(S.size + 2, S.size) }RB = Array.new(S.size + 2, 0)(1 .. S.size).each do |d|i = S.size - dj_ = C.index(S[i])4.times{|j| C_MIN[j][i] = (j == j_ ? i : C_MIN[j][i + 1]) }RB[i] = (j_ == 3 ? RB[i + 1] + 1 : RB[i + 1])enddef count_face(dir)mid = dir.chars.map{|c| C.index(c) }face = 0l = 0while l < S.sizel = C_MIN[0][l] + 1face += RB[mid.inject(l){|i,j| C_MIN[j][i] + 1 }]endfaceendrface = count_face('*^^')lface = count_face('^^*')puts "#{lface} #{rface}"