페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#4628

코테 응시자분석 1s 256MB

문제

*본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제이다.

 

정올은 하반기 경력 개발자 공개채용을 진행 중에 있으며 현재 지원서 접수와 코딩테스트가 종료되었다.

이번 채용에서 지원자는 지원서 작성 시 아래와 같이 4가지 항목을 반드시 선택하도록 하였다.

 

    * 코딩테스트 참여 개발언어 항목에 cpp, java, python 중 하나를 선택해야 한다.

    * 지원 직군 항목에 backend와 frontend 중 하나를 선택해야 한다.

    * 지원 경력구분 항목에 junior와 senior 중 하나를 선택해야 한다.

    * 선호하는 소울푸드로 chicken과 pizza 중 하나를 선택해야 한다.

 

인재영입팀에 근무하고 있는 커미는 코딩테스트 결과를 분석하여 채용에 참여한 개발팀들에 제공하기 위해

지원자들의 지원조건을 선택하면 해당 조건에 맞는 지원자가 몇 명인지 쉽게 알 수 있는 프로그램을 만들고 있다.

 

예를 들어 다음과 같은 질의에 답하는 프로그램을 만들고자 한다.

  * 코딩테스트에 java로 참여했으며, backend 직군을 선택했고, junior 경력이면서, 소울푸드로 pizza를 

    선택한 사람 중 코딩테스트 점수를 50점 이상 받은 지원자는 몇 명인가?

  * 코딩테스트에 python으로 참여했으며, frontend 직군을 선택했고, senior 경력이면서, 

    소울푸드로 chicken을 선택한 사람 중 코딩테스트 점수를 100점 이상 받은 사람은 모두 몇 명인가?

  * 코딩테스트에 cpp로 참여했으며, senior 경력이면서, 소울푸드로 pizza를 선택한 사람 중

    코딩테스트 점수를 100 점 이상 받은 사람은 몇 명인가?

  * backend직군을 선택했고, senior 경력이면서 코딩테스트 점수를 200점 이상 받은 사람은 모두 몇 명인가?

  * 소울푸드로 chicken을 선택한 사람 중 코딩테스트 점수를 250점 이상 받은 사람은 모두 몇 명인가?

  * 코딩테스트 점수를 150점 이상 받은 사람은 모두 몇 명인가?

 

즉, 개발팀에서 궁금해하는 내용은 다음과 같은 형태를 갖는다.

[조건]을 만족하는 사람 중 코딩테스트 점수를 X점 이상 받은 사람은 모두 몇 명인가?

 

주어진 정보를 이용하여 위 형식의 질문에 답하는 프로그램을 작성하시오.

 


입력

첫 행에 코딩테스트 응시생의 수 N이 주어진다. ( 1 <= N <= 50,000)

다음 N개의 행에 각 응시생의 프로필이 "개발언어 직군 경력 소울푸드 점수" 형식으로 주어진다.

- 개발 언어는 cpp, java, python 중 하나이다.

- 직군은 backend, frontend 중 하나이다.

- 경력은 junior, senior 중 하나이다.

- 소울푸드는 chicken, pizza 중 하나이다.

- 점수는 코딩테스트 점수를 의미하며 1이상 100,000이하의 자연수이다.

 

다음 행에 쿼리의 수 Q가 주어진다. (1 <= Q <= 100,000)

다음 Q개의 행에 "개발언어 and 직군 and 경력 and 소울푸드 점수X"형식의 쿼리가 주어진다.

- 개발언어는 cpp, java, python  중 하나이다.

- 직군은 backend, frontend 중 하나이다.

- 경력은 junior, senior 중 하나이다.

- 소울푸드는 chicken, pizza 중 하나이다.

- '-'표시는 해당 조건을 고려하지 않겠다는 의미이다.

- 점수X는 코딩테스트 점수를 의미하며 조건을 만족하는 사람 중

   X점 이상 받은 사람은 모두 몇 명인지를 의미한다.

- 각 단어는 공백문자(스페이스 바) 하나로 구분되어 있다.

- 예를 들면, "cpp and - and senior and pizza 500"은 

   "cpp로 코딩테스트를 봤으며, 경력은 senior 이면서 소울푸드로 pizza를 선택한 지원자 중

    코딩 테스트 점수를 500점 이상받은 사람은 모두 몇 명인가?"를 의미한다.​ 


출력

각 질의 순서대로 답을 구하여 행 단위로 출력한다.

 


예제

6

java backend junior pizza 150
python frontend senior chicken 210
python frontend senior chicken 150
cpp backend senior pizza 260
java backend junior chicken 80
python backend senior chicken 50
6
java and backend and junior and pizza 100
python and frontend and senior and chicken 200
cpp and - and senior and pizza 250
- and backend and senior and - 150
- and - and - and chicken 100
- and - and - and - 150
1

1
1
1
2
4


출처

kakao2020_2 3번 | dnfka0930
로그인해야 코드를 작성할 수 있어요.