25024
#include <stdio.h>
// 유효성 검사
int is_valid(int num1, int num2,
int min1, int max1,
int min2, int max2){
int is_valid = 0;
if(num1 >= min1 && num1 <= max1){
is_valid = 1;
}
else{
return is_valid;
}
if(num2 >= min2 && num2 <= max2){
is_valid = 1;
}
else{
is_valid = 0;
}
return is_valid;
}
// 출력 함수
void print_yes_or_no(int is_valid){
if(is_valid){
printf("Yes ");
}
else{
printf("No ");
}
}
int main(void){
// 테스트 케이스 입력
int test_case = 0;
scanf("%d", &test_case);
for(int i = 0; i < test_case; i++){
// 숫자 입력
int num1 = 0, num2 = 0;
scanf("%d %d", &num1, &num2);
// 시간으로 유효한지 검사
int is_time = is_valid(num1, num2,0,23,0,59);
int d_max = 31;
// 4,6,9,11월은 max값을 30으로 변경
if (num1 == 4 || num1 == 6 || num1 == 9 || num1 == 11){
d_max = 30;
}
// 2월은 max값을 29로 변경
else if (num1 == 2){
d_max = 29;
}
// 날짜로 유효한지 검사
int is_day = is_valid(num1, num2,1,12,1,d_max);
// yes와 no 출력
print_yes_or_no(is_time);
print_yes_or_no(is_day);
printf("\n");
}
return 0;
}