結果
問題 | No.430 文字列検索 |
ユーザー |
![]() |
提出日時 | 2023-04-25 14:20:01 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 369 ms / 2,000 ms |
コード長 | 1,000 bytes |
コンパイル時間 | 190 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 154,720 KB |
最終ジャッジ日時 | 2024-11-10 01:06:17 |
合計ジャッジ時間 | 4,746 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 14 |
ソースコード
from math import * from heapq import * from bisect import * from copy import * from random import * from collections import * from itertools import * from decimal import * #tmp = Decimal(mid).quantize(Decimal('0'), rounding=ROUND_HALF_UP) from functools import * #@lru_cache(maxsize=None) from operator import * from sys import * input = stdin.readline # .rstrip() INF = 10**18 mod1 = 10**9+7 mod2 = 998244353 #DecimalならPython #再帰ならPython!!!!!!!!!!!!!!!!!!!!!!!!!! ''' これO(S^2)が通らんのしんどくね C++用なんかな 部分文字列か まあ主客転倒的なあれだな 部分文字列って連続かよ ''' S = list(input().rstrip()) N = len(S) M = int(input()) memo = defaultdict(int) for i in range(N): s = [] for j in range(1,11): k = i+j-1 if k >= N: break s.append(S[k]) memo[''.join(s)] += 1 ans = 0 for _ in range(M): C = input().rstrip() ans += memo[C] print(ans)