main
[백준-2477번/Java] 참외밭 본문
https://www.acmicpc.net/problem/2477
* 1, 2 방향의 값 중에서 가장 큰 값이 큰 사각형의 가로 / 3,4 방향의 값 중에서 가장 큰 값이 큰 사각형의 세로이다.
* 측정값을 배열에 넣고, 방향을 나타내는 값을 나열하였을 때,
3 -> 1 -> 3 -> 1 같이 반복되는 부분에서 중간 두개의 값이 제외해야 하는 사각형의 가로, 세로 넓이 이다.
import java.io.*;
import java.util.*;
public class Main {
public static class Measurement {
int direction;
int length;
public Measurement(int direction, int length) {
this.direction = direction;
this.length = length;
}
}
public static void main(String[] args) throws IOException {
Scanner in = new Scanner(System.in);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int K = in.nextInt();
int max_width = 0;
int max_height = 0;
Measurement[] squre_info = new Measurement[6];
for (int i = 0; i < squre_info.length; i++) {
int direction = in.nextInt();
int length = in.nextInt();
squre_info[i] = new Measurement(direction, length);
if (direction == 1 || direction == 2) {
max_width = length > max_width ? length : max_width;
} else {
max_height = length > max_height ? length : max_height;
}
}
int except_area = 0;
for (int i = 0; i < squre_info.length; i++) {
// 비교 기준 : direction이 a1 - b1 - a2 - b2 로 반복 될 때,
// b1, a2 값이 제외되어야 하는 사각형의 가로 세로 길이
int index = i;
int index_1 = i + 1 > squre_info.length - 1 ? i + 1 - squre_info.length : i + 1;
int index_2 = i + 2 > squre_info.length - 1 ? i + 2 - squre_info.length : i + 2;
int index_3 = i + 3 > squre_info.length - 1 ? i + 3 - squre_info.length : i + 3;
if (squre_info[index].direction == squre_info[index_2].direction
&& squre_info[index_1].direction == squre_info[index_3].direction) {
except_area = squre_info[index_1].length * squre_info[index_2].length;
break;
}
}
System.out.println((max_width * max_height - except_area) * K);
}
}
728x90
'Algorithm' 카테고리의 다른 글
[백준-1002번/Java] 터렛 (0) | 2022.11.22 |
---|---|
[백준-3053번/Java] 택시 기하학 (0) | 2022.11.22 |
[백준-11478번/Java] 서로 다른 부분 문자열의 개수 (0) | 2022.11.22 |
[백준-1269번/Java] 대칭 차집합 (0) | 2022.11.22 |
[백준-1764번/Java] 듣보잡 (0) | 2022.11.22 |
Comments