만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

맥주 마시면서 걸어가기

면접 대비

시간 제한1초메모리 제한128 MB

요약
편의점에서 보충하는 맥주 20병으로 맨해튼 거리 1000m씩 이동해 페스티벌까지 갈 수 있는지 판단합니다.
난이도

보통10점 중 4점

유형
BFS, 그래프
정답자
아직 제출이 없습니다

문제

송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 나선다. 맥주 한 박스에는 맥주가 20병 들어 있다. 목이 마르면 안 되기 때문에 50미터에 한 병씩 마시려고 한다. 즉, 50미터를 가려면 그 직전에 맥주 한 병을 마셔야 한다.

상근이네 집에서 페스티벌이 열리는 곳까지는 거리가 매우 멀다. 따라서 중간에 맥주를 더 사야 할 수도 있다. 미리 인터넷으로 알아보니 다행히 맥주를 파는 편의점이 있다. 편의점에 들르면 빈 병을 버리고 새 맥주를 살 수 있다. 하지만 박스에 담는 맥주는 20병을 넘을 수 없다. 편의점을 나선 직후에도 50미터를 가기 전에 맥주 한 병을 마셔야 한다.

편의점, 상근이네 집, 펜타포트 락 페스티벌의 좌표가 주어진다. 상근이와 친구들이 행복하게 페스티벌에 도착할 수 있는지 구하는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 tt가 주어진다. (t≤50t \le 50)

각 테스트 케이스의 첫째 줄에는 맥주를 파는 편의점의 개수 nn이 주어진다. (0≤n≤1000 \le n \le 100)

다음 n+2n+2개 줄에는 상근이네 집, 편의점 nn곳, 펜타포트 락 페스티벌의 좌표가 이 순서대로 주어진다. 각 좌표는 두 정수 xx와 yy로 이루어져 있다. (두 값 모두 미터 단위, −32768≤x,y≤32767-32768 \le x, y \le 32767)

송도는 직사각형 모양으로 생긴 도시이다. 두 좌표 사이의 거리는 xx 좌표 차이의 절댓값과 yy 좌표 차이의 절댓값을 더한 값이다. (맨해튼 거리)

출력

각 테스트 케이스마다 한 줄씩 출력한다. 상근이와 친구들이 행복하게 페스티벌에 갈 수 있으면 happy를, 중간에 맥주가 바닥나서 더 이동할 수 없으면 sad를 출력한다.

예제1

  1. 예제 1

    입력
    2
    2
    0 0
    1000 0
    1000 1000
    2000 1000
    2
    0 0
    1000 0
    2000 1000
    2000 2000
    
    예상 출력
    happy
    sad