結果
問題 |
No.2710 How many more?
|
ユーザー |
👑 |
提出日時 | 2024-03-31 14:58:30 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 339 ms / 2,000 ms |
コード長 | 567 bytes |
コンパイル時間 | 292 ms |
コンパイル使用メモリ | 82,576 KB |
実行使用メモリ | 98,884 KB |
最終ジャッジ日時 | 2024-09-30 20:08:22 |
合計ジャッジ時間 | 5,582 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 17 |
ソースコード
def solve(n, q, a, xy): b = sorted(range(n), key=lambda x: a[x]) c = [0] * n d = [0] * n for i, x in enumerate(b): if i > 0 and a[b[i-1]] == a[x]: c[x] = c[b[i-1]] else: c[x] = i for i, x in reversed(list(enumerate(b))): if i < n - 1 and a[b[i+1]] == a[x]: d[x] = d[b[i+1]] else: d[x] = i # print(c) for x, y in xy: print(max(c[x] - d[y] - 1, 0)) n, q = [int(x) for x in input().split()] a = [int(x) for x in input().split()] xy = [[int(x) - 1 for x in input().split()] for _ in range(q)] solve(n, q, a, xy)