일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- CS
- python
- MYSQL
- Gem
- 파이썬
- 자바
- programmers
- spring boot
- java
- c
- Computer Science
- SWEA
- C++
- regression
- SECS
- SECS/GEM
- 백준
- Spotify Api
- SECS-II
- Spring
- 스포티파이
- modern c++
- linux
- Spring JPA
- 회원가입
- 프로그래머스
- SW Expert Academy
- 회귀
- Baekjoon
- spotify
Archives
- Today
- Total
비버놀로지
[BAEKJOON 백준] 2563 색종이 본문
728x90
문제
가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오.
예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 그림과 같은 모양으로 붙였다면 검은색 영역의 넓이는 260이 된다.
입력
첫째 줄에 색종이의 수가 주어진다. 이어 둘째 줄부터 한 줄에 하나씩 색종이를 붙인 위치가 주어진다. 색종이를 붙인 위치는 두 개의 자연수로 주어지는데 첫 번째 자연수는 색종이의 왼쪽 변과 도화지의 왼쪽 변 사이의 거리이고, 두 번째 자연수는 색종이의 아래쪽 변과 도화지의 아래쪽 변 사이의 거리이다. 색종이의 수는 100 이하이며, 색종이가 도화지 밖으로 나가는 경우는 없다
출력
첫째 줄에 색종이가 붙은 검은 영역의 넓이를 출력한다.
입력을 기준으로 10만큼 증가해서 생성되는 정사각형을 모두 1로 넣어준다.
그렇게 만들어진 배열에서 1의 수를 세어주면, 배열에 있는 색종이의 크기를 구할 수 있다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int arr[][]=new int[100][100];
for (int i = 0; i < n; i++) {
int x=sc.nextInt();
int y=sc.nextInt();
for (int j = x; j < x+10; j++) {
for (int j2 = y; j2 < y+10; j2++) {
arr[j][j2]=1;
}
}
}
int cnt=0;
for (int i = 0; i < 100; i++) {
for (int j = 0; j < 100; j++) {
if(arr[i][j]==1) {
cnt++;
}
}
}
System.out.println(cnt);
}
}
728x90
'ALGORITM > JAVA' 카테고리의 다른 글
[BAEKJOON 백준] 2578 빙고 (0) | 2021.01.24 |
---|---|
[BAEKJOON 백준] 2564 경비원 (0) | 2021.01.24 |
[BAEKJOON 백준] 2558 A+B-2 (0) | 2021.01.15 |
[BAEKJOON 백준] 2527 직사각형 (2) | 2021.01.14 |
[BAEKJOON 백준] 2491 수열 (0) | 2021.01.14 |
Comments