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