2 - D 입력질문드립니다.
370
작성한 질문수 11
안녕하세요.
2583번 문제에서 예제가 왜
5 7 3
0 2 4 4
1 1 2 5
4 0 6 2이렇게 받는지 잘 모르겠습니다ㅠㅠ
그리고
for(int i = 0; i < k; i++) {
cin >> x1 >> y1 >> x2 >> y2;
for(int x = x1; x < x2; x++) {
for(int y = y1; y < y2; y++) {
a[y][x] = 1;
}
}
}cin 으로 x1 y1 x2 y2 받는 줄 아래에
왜 x가 x2랑 엮이고 y가 y2랑 엮이는지 잘 모르겠습니다ㅠㅠ
문제 풀기전에 예제입력&예제출력이 왜 이렇게 나오나 먼저 좀 생각을 해보고 코드 작성하는데 한참을 들여다 봤는데 잘 이해가 안되니 도저히 감이 안와서 이렇게 여쭙니다.
답변 1
1
안녕하세요 Yello님 ㅎㅎ
첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오른쪽 위 꼭짓점의 x, y좌표값이 빈칸을 사이에 두고 차례로 주어진다. 모눈종이의 왼쪽 아래 꼭짓점의 좌표는 (0,0)이고, 오른쪽 위 꼭짓점의 좌표는(N,M)이다. 입력되는 K개의 직사각형들이 모눈종이 전체를 채우는 경우는 없다.
문제지문을 보면.
자 K개의 줄에 따라 x1, y1, x2, y2가 나온다고 되어있습니다.
그래서
0 2 4 4
1 1 2 5
4 0 6 2이러한 3줄이 나오게 되는 것이죠.
또한 여기서
x1, y1, x2, y2를 해석해보면
우리가 사각형을 좌표로 나타낸다고 해볼게요.
음..
{0, 0}, {2, 0}, {0, 2}, {2, 2} 의 꼭지점을 가진 사각형을 예로 들어보죠. (x, y)
자 지금 제가 4개의 꼭지점을 들었죠? 근데 이거를 이 문제에서 주어지듯이
왼쪽 아래 꼭짓점의 x, y좌표값과 오른쪽 위 꼭짓점
으로만 나타낼 수도 있어요.
즉, {0, 0}, {2, 2} 으로 표현할 수 있습니다.
그렇게 한다음
x : 0 ~ 2
y : 0 ~ 2
로 좌표를 만들어 해당 정점을 채워가며 해당 사각형을 만들 수 있는것이죠.
감사합니다.
2-T 질문
0
4
0
코딩 살구클럽 가입 문의
0
67
2
코딩살구클럽 가입문의
0
69
2
3-K private case 질문
0
66
2
안녕하세요. 코딩살구클럽 문의드립니다!
0
77
2
7:41 듣다가 질문합니다
0
77
2
코드 리뷰 요청드립니다!
0
83
2
코딩살구클럽 계정 문의
0
79
2
SK하이닉스 대비 강의수강
0
217
3
코딩살구클럽 등록부탁드립니다.
0
78
2
7-F 재귀로 풀시 런타임애러
0
75
1
1-N 문제 질문입니다. (+ 채점오류)
0
82
2
코딩살구클럽 가입 확인 부탁드립니다.
0
86
2
직장인 코테 합격 공부방법 문의
0
127
2
코딩살구클럽 가입 방법
0
96
2
6-H 체점 관련 질문
0
74
1
채점서버 연결 관련 질문입니다
0
101
2
삼성 s직군
0
88
1
삼성 코테 없어짐
0
213
1
코딩살구클럽 가입부탁드립니다
0
87
2
코딩살구클럽 가입 요청 확인부탁드립니다
0
69
2
5-S 테스트 케이스 질문
0
78
2
코살 문제풀이 환경
0
88
2
2 - T 오큰수 문제가 있는 것 같습니다.
0
82
1





