설명
. 문자열 (소문자) 질문 문자열의 숫자 질문 접두사 (자체는 단어 자체 접두사)의 문자열로 문자열의 수의 통계를 많이 주어
입에
문자를 입력 N, N- 표현 문자열 (N <= 10000)
다음 N 라인, 각 라인 10 이하 정도의 문자열
입력 m은 질문 m이 있다는 것을 나타낸다 (m은 <= 100)의
두 번째 부분은 일련의 질문에 각각 해당 라인 인 각 질문 문자열이다.
출력
각 질문하는 질문 프리픽스 열 번호에 주어진다.
샘플 입력
. 5
바나나
밴드
비
절대
ACM
. 4
BA
B
밴드
ABC
샘플 출력
2
. 3
. 1
0
솔 : 각 노드에서 발생하는 점의 수가 규정 된 전화 번호리스트와 방법.
1 #INCLUDE <CString을> 2 #INCLUDE <iostream> 3 사용 공간을 성병; 4 INT의 A [ 100001 ] [ 26 ], TOT = 1 , 최종 [ 100001 ]; 5 무효 인 ( 숯 * STR) (6) { 7 INT N = 나 strlen (캐릭터), p = 1 ; 8 대 ( INT 난 = 0 ; 나는 <N; I ++ ) 9 { 10 INT의 L = STR은 [I] - ' ' ; (11) IF (! A [P] [L])은 12 인 A [P] [L]가 ++ = , TOT 13이고 p = A [P] [L] 14 종료 [P] ++; // 통계적 발생 노드 P 번호 15 } 16 } . 17 INT를 찾기 ( 숯 * STR) (18)는 { 19. INT N- = 나 strlen (STR), P = 1이다. ] (20)은 위해 ( INT I = 0 ; I <N- I ++ ) (21)가 { 22는 INT L = STR [I] - ' ' ; 23은 p = A [P] [1,5]; 24 의 경우 (! P)를 돌려 0 ; 25 } 26 리턴 최종 [P]; 27 } 28 숯 STR [ 11 ]; 29 INT 의 main () 30 { 31 INT N, m; 32 는 scanf ( " %의 D ' , N); 33 대 ( INT 난 = 1 ; i가 <= N; I ++ ) 34 { 35 는 scanf ( " % S ' , STR); 36 인 (STR); 37 } 38 는 scanf ( " %의 D ' , m); 39 대 ( INT 난 = 1 ; i가 <= m; I ++ ) 40 { 41 는 scanf ( " % S " , STR); 42 의 printf ( " 가 % d \ n " 발견 (STR)); 43 } 44 반환 0 ; 45 }