RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R00253

사전 검색

Gold I 골드 I
난이도
2.500s
시간 제한
256MB
메모리 제한
1
맞았습니다!!
1
제출 수
100.0%
정답률
레이팅

의견: 0

설명

온라인 사전 서비스에는 \(N\)개의 단어가 등록되어 있다(같은 단어가 여러 번 등록될 수도 있다). 사용자가 검색창에 어떤 문자열 \(s\)를 입력하면, 서비스는 등록된 단어들 중 \(s\)시작하는 단어가 몇 개인지를 즉시 보여 준다(중복 등록된 단어는 각각 센다).

\(Q\)개의 검색어가 주어질 때, 각 검색어에 대한 결과를 출력하여라. 모든 문자열은 소문자 알파벳으로만 이루어져 있다.

제약

\(1 \le N, Q \le 100\,000\)

모든 단어와 검색어는 소문자 알파벳(az)으로만 이루어진다.

등록 단어 길이의 총합과 검색어 길이의 총합은 각각 \(1\,000\,000\) 이하이다.

입력 형식

첫째 줄에 등록된 단어의 개수 \(N\)이 주어진다.

다음 \(N\)개의 줄에 각각 등록된 단어가 하나씩 주어진다.

그 다음 줄에 검색어의 개수 \(Q\)가 주어진다.

다음 \(Q\)개의 줄에 각각 검색어 \(s\)가 하나씩 주어진다.

출력 형식

각 검색어에 대해, 그 검색어로 시작하는 등록 단어의 개수를 한 줄에 하나씩 출력한다.

예제 1
입력
5
apple
app
apricot
banana
app
4
app
ap
b
cherry
출력
3
4
1
0
설명

app로 시작하는 단어는 apple, app, app 세 개. ap로 시작하는 단어는 apple, app, apricot, app 네 개. b는 banana 하나. cherry로 시작하는 단어는 없어 \(0\).

예제 2
입력
3
abc
abc
abc
2
abc
abcd
출력
3
0
설명

같은 단어 abc가 세 번 등록되었다. abc로 시작하는 단어는 \(3\)개, abcd로 시작하는 단어는 없어 \(0\).

힌트

막혔나요? 코인으로 단계별 힌트를 잠금 해제하세요 — 첫 힌트는 가벼운 방향 제시, 뒤로 갈수록 더 많이 알려 줍니다. 문제를 풀면 모든 힌트가 무료로 공개됩니다.

문제 정보

riseoj 작성

출처 Original

평가 및 의견

사전 검색

개요
출제자 난이도 Gold I 골드 I 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

사전 검색

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8