結果

問題 No.871 かえるのうた
ユーザー 6soukiti296soukiti29
提出日時 2019-08-30 22:25:14
言語 Nim
(2.0.2)
結果
CE  
(最新)
AC  
(最初)
実行時間 -
コード長 927 bytes
コンパイル時間 1,109 ms
コンパイル使用メモリ 56,196 KB
最終ジャッジ日時 2023-09-15 12:40:22
合計ジャッジ時間 1,914 ms
ジャッジサーバーID
(参考情報)
judge12 / judge11
このコードへのチャレンジ(β)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
/home/judge/data/code/Main.nim(38, 26) Error: type mismatch: got <int>
but expected one of:
proc `<`(x, y: int): bool
  first type mismatch at position: 2
  missing parameter: y
proc `<`(x, y: int64): bool
  first type mismatch at position: 2
  missing parameter: y
19 other mismatching symbols have been suppressed; compile with --showAllMismatches:on to see them

expression: <N

ソースコード

diff #

import strutils,sequtils,deques
var
    N,K : int
(N, K) = stdin.readline.split.map(parseInt)
var
    X = stdin.readline.split.map(parseBiggestInt)
    A = stdin.readline.split.map(parseBiggestInt)
    u : bool = true
    que = initDeque[int](1024)
    lx,rx,lx2,rx2 : int64
    ln,rn : int
    used : array[100010, bool]
    ans : int = 1
    
K -= 1
lx = X[K]
rx = X[K]
ln = K
rn = K
lx2 = X[K]
rx2 = X[K]
que.addLast(K)

while que.len > 0:
    u = false
    while que.len > 0:
        var p = que.popFirst
        lx2 = min(lx2, X[p] - A[p])
        rx2 = max(rx2, X[p] + A[p])
    for n in countdown(ln - 1, 0):
        if X[n] >= lx2:
            que.addLast(n)
            ln = n
            ans += 1
        else:
            break
    lx = lx2
    for n in (rn + 1) .. <N:
        if X[n] <= rx2:
            que.addLast(n)
            rn = n
            ans += 1
        else:
            break
    rx = rx2

echo ans
0