結果
問題 |
No.204 ゴールデン・ウィーク(2)
|
ユーザー |
|
提出日時 | 2019-01-23 22:55:23 |
言語 | Nim (2.2.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 881 bytes |
コンパイル時間 | 3,318 ms |
コンパイル使用メモリ | 67,040 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-01 10:39:47 |
合計ジャッジ時間 | 4,542 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 33 WA * 13 |
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 26) Warning: imported and not used: 'algorithm' [UnusedImport]
ソースコード
import sequtils,strutils,algorithm template `max=`*(x,y) = x = max(x,y) proc toArray(s:string) :seq[char] = toSeq(s.items) proc countMax[T](arr:seq[T],item:T) : int = if arr.len == 0 : return 0 var pre = arr[0] var cnt = 0 for i in 1..<arr.len: let a = arr[i] if a == pre: cnt += 1 else: if pre == item : result .max= cnt cnt = 1 pre = a if arr[^1] == item : result .max= cnt let n = stdin.readLine().parseInt() let S = stdin.readLine() & stdin.readLine() let X = "x".repeat(n) let O = "o".repeat(n).toArray() let T = (X & S & X).toArray() proc overWrite(dst:seq[char],startIndex:int) : seq[char] = result = dst for i in 0..<n: if startIndex + i >= dst.len : return @[] # if result[startIndex + i ] == 'o' : return @[] result[startIndex + i] = 'o' var ans = 0 for i in 0..28: ans .max= T.overWrite(i).countMax('o') echo ans