반응형
문제 출처 :
https://www.acmicpc.net/problem/2563
알고리즘 분석 :
문제 해결에 필요한 사항
1. 구현
대학교 2학년 시절에 과제로 나온 것이 생각이 난다.
이 문제와 매우 유사하였으며, 하나같이 푸는 과정들이 모두 정말 선분을 구하고,
비교하고 그렇게 몇십개의 조건문으로 해결하고 있었다.
하지만 그때 우여곡절끝에 이 방법이 나는 생각났고, 문제를 풀게되어 기분이 좋았던 기억이 있다.
블로그에 수록도 해두어 링크를 달아보려 한다. http://www.crocus.co.kr/313
간단하게 2차원 배열을 두고 넓이가 되는 부분에 1이상의 값을 표시해주면 된다.
그리고 출력은 겹치는 넓이는 출력하면 안되니 1이상인 경우 그냥 +1을 하여 모든 넓이를 구한다.
소스 코드 :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | #include <iostream> #include <cstdio> using namespace std; int arr[101][101]; int main() { int n; scanf("%d", &n); while (n--) { int y, x; scanf("%d %d", &x, &y); for (int i = y; i < y + 10; i++) for (int j = x; j < x + 10; j++) arr[i][j]++; } int cnt = 0; for (int i = 0; i <= 100; i++) for (int j = 0; j <= 100; j++) if (arr[i][j]) cnt++; cout << cnt; return 0; } // This source code Copyright belongs to Crocus // If you want to see more? click here >> | Crocus |
반응형
'Applied > 알고리즘 문제풀이' 카테고리의 다른 글
[2941번] 크로아티아 알파벳 (0) | 2017.04.21 |
---|---|
[3943번] 헤일스톤 수열 (0) | 2017.04.21 |
[5347번] LCM (0) | 2017.04.21 |
[12791번] Starman (0) | 2017.04.21 |
[13410번] 거꾸로 구구단 (0) | 2017.04.21 |