ID 확인

NYPC 2019 · 예선

웹 개발자 아란은 nexon.com의 회원가입 페이지를 개발했다. 회원가입을 할 때, 개인이 누구인지 확인하는 방법은 여러 가지가 있지만, nexon.com에서 사용하려는 방식은 이메일을 사용하는 것이다. 아란은, 어떤 이메일 주소로 회원가입을 신청하면, 신청한 사람이 이메일을 소유하고 있는지 확인하기 위해 이메일을 보내서 받을 수 있는지 확인하는 회원가입 페이지를 만들었다. 하지만, 사람들이 이메일을 잘못 작성하여 이메일을 다시 입력 해야 하는 경우가 많이 생기자, 아란은 이메일이 올바른 이메일인지 체크하는 것을 구현하기로 했다.

nexon.com에서 사용할 수 있는 이메일의 규칙은 다음과 같다.

예를 들면, baz.zi@nypc.co.kr 이란 이메일의 로컬 파트는 baz.zi 이고, 도메인 파트는 nypc.co.kr 이다. 모두 사용 가능한 이메일 문자들만 쓰였기 때문에, 이는 올바른 이메일이다.

하지만, #dao#@.nexon._com은 사용할 수 있는 이메일이 아니다. 왜냐하면 로컬 파트가 #dao# 인데, 로컬 파트에 이메일 문자가 아닌 #이 들어가 있기 때문이다. 또한, 도메인 파트는 .nexon._com 인데, 도메인 파트에서 이메일 문자가 아닌 _가 쓰였다.

또한, A@B@Cnexon.com도 사용할 수 있는 이메일이 아닌데, 로컬파트와 도메인 파트를 구분하는 @ 기호가 없거나 두 개 이상으로 로컬 파트와 도메인 파트를 구분할 수 없기 때문이다.

어떤 이메일이 주어졌을 때, nexon.com의 새로운 홈페이지에서 사용할 수 있는 이메일인지 확인하여라.

입력 형식

첫째 줄에는 확인할 이메일의 수 N이 주어진다. (1N1001 \le N \le 100)

다음 N개의 줄에는 한 줄에 하나씩 이메일 주소가 주어진다. 문자열의 길이는 11 이상 100100 이하이고, 출력할 수 있는 문자 중 공백과 <DEL>을 제외한 문자들로 (아스키 코드 33(!) 이상, 126(~) 이하) 로 이루어져 있다.

출력 형식

출력은 NN개의 줄로 이루어져 있다. ii번째 입력받은 이메일 주소가 사용할 수 있는 이메일이면 Yes, 아니면 No를 출력하여라.

예제 1

입력

4 baz.zi@nypc.co.kr #dao#@.nexon._com A@B@C nexon.com

출력

Yes No No No

채점 방식

입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞추어야 그 종류에 배정된 점수를 받을 수 있다.

종류 1: 17

입력에 @은 정확히 한 개 존재하며, 도메인 파트는 nexon.com이다.

종류 2: 17

입력에 @은 정확히 한 개 존재하며, 로컬 파트는 bazzi이다.

종류 3: 31

입력의 첫 문자나 마지막 문자는 @이 아니다.

종류 4: 35

별다른 제약조건 없음.

해설