왕과 여왕
시간 제한2초메모리 제한256 MB
n×m 판에서 (x, y)에 퀸이 있을 때, 대각선으로 못 가는 킹이 퀸의 공격을 피해 다닐 수 있는 영역의 개수와 각 영역의 크기를 오름차순으로 구한다.
문제
긴 체스 대결 끝에 크기의 체스판에는 검은 왕과 흰 여왕만 남았다. 체스를 조금이라도 해 본 사람이라면 이 상황에서 왕의 목숨이 위태롭다는 것을 안다. 설상가상으로 왕은 부상을 입어 대각선으로 이동할 수 없다. 따라서 왕은 한 번에 자신이 있는 칸과 변을 공유하는 칸으로만 이동할 수 있다. 여왕은 같은 세로줄, 가로줄, 대각선에 있는 칸을 모두 공격한다.
왕은 여왕이 너무 게을러서 자신을 쫓아오지 않는다는 것을 안다. 여왕은 좌표 인 칸에 그대로 서 있을 것이다. 따라서 왕은 체스판의 아무 칸이나 고른 뒤, 그 칸이 속한 영역에서 평생을 살 수 있다. 체스판의 영역이란, 부상당한 왕이 여왕의 공격을 받는 칸을 지나지 않고 영역 안의 임의의 칸에서 다른 임의의 칸으로 이동할 수 있는 칸의 집합이다.
이제 왕은 체스판에 있는 영역의 개수와 각 영역의 크기를 알고 싶어 한다. 왕을 도와주자.
입력
첫째 줄에 테스트 케이스의 수를 나타내는 이하의 정수가 주어진다. 이어서 각 테스트 케이스가 한 줄에 하나씩 주어진다.
테스트 케이스는 네 정수 , , , 로 이루어진다. 이는 체스판의 크기와 여왕이 있는 칸의 좌표이다.
출력
각 테스트 케이스마다 다음 형식으로 답을 출력한다. 먼저 체스판에 있는 영역의 개수 를 출력한다. 그다음 개의 수를 출력하는데, 이는 각 영역의 크기이다. 크기는 비내림차순으로 출력한다. 수는 공백 또는 줄바꿈으로 구분한다.