結果
問題 |
No.1859 ><<<
|
ユーザー |
|
提出日時 | 2021-11-26 12:55:16 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 199 ms / 2,000 ms |
コード長 | 962 bytes |
コンパイル時間 | 98 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 40,780 KB |
最終ジャッジ日時 | 2024-07-04 15:59:50 |
合計ジャッジ時間 | 8,864 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 41 |
ソースコード
def partial_match_table(word): table = [0] * (len(word) + 1) table[0] = -1 i, j = 0, 1 while j < len(word): matched = word[i] == word[j] if not matched and i > 0: i = table[i] else: if matched: i += 1 j += 1 table[j] = i return table def kmp_search(text, word): table = partial_match_table(word) i, p = 0, 0 while i < len(text) and p < len(word): if text[i] == word[p]: i += 1 p += 1 elif p == 0: i += 1 else: p = table[p] return (-1, i - p)[p == len(word)] def solve(n, a, s): a = a + a t = [] for i in range(2 * n - 1): if a[i] < a[i + 1]: t.append('<') else: t.append('>') t = ''.join(t) return t.find(s) n = int(input()) a = list(map(int,input().split())) s = input() print(solve(n, a, s))