AB
면접 대비시간 제한2초메모리 제한1024 MB
문자열 집합 A와 B에 삽입과 삭제를 처리하고, 질의 문자열 S를 A 원소의 접두사와 B 원소의 접미사로 나누는 방법의 수를 구합니다.
문제
집합 , 와 문자열 에 대하여, 다음 쿼리를 수행하는 프로그램을 작성하시오.
add A: 에 를 추가한다.delete A: 에서 를 제거한다.add B: 에 를 추가한다.delete B: 에서 를 제거한다.find: 의 원소의 접두사와 의 원소의 접미사를 이어 붙여 가 되는 경우의 수를 출력한다. 원소가 다르거나 접두사(접미사)가 다르면 다른 경우로 센다. 빈 접두사(접미사)는 고려하지 않는다.
초기에 , 는 비어 있으며, 이미 존재하는 원소를 추가하거나 존재하지 않는 원소를 제거하는 쿼리는 주어지지 않는다.
입력
첫째 줄에 쿼리의 개수 가 주어진다.
둘째 줄부터 개의 줄에 걸쳐 쿼리가 한 줄에 하나씩 주어진다. 쿼리에 등장하는 문자열은 영어 소문자로 이루어져 있으며, 길이는 1 이상 1,000 이하이다.
find 쿼리는 적어도 한 번 주어진다.
출력
find 쿼리의 답을 한 줄에 하나씩 출력한다.