Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions 0616/Programmers/Lv1/최소직사각형_lee.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
class Solution {
public int solution(int[][] sizes) {
int maxW = 0;
int maxH = 0;
for(int i = 0; i < sizes.length; i++){
// 가로는 주어진 명함 가로 세로 중 더 큰 것
int w = Math.max(sizes[i][0], sizes[i][1]);
// 세로는 더 작은 것
int h = Math.min(sizes[i][0], sizes[i][1]);
// 가로 최대 값 갱신
maxW = Math.max(maxW ,w);
// 세로 최대 값 갱신
maxH = Math.max(maxH ,h);
}
int answer = maxW * maxH;
return answer;
}

}
19 changes: 19 additions & 0 deletions 0616/Programmers/Lv2/멀쩡한사각형_lee.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
class Solution {
public long solution(int w, int h) {
long wv = Long.valueOf(w);
long hv = Long.valueOf(h);
long gcd = findgcd(wv, hv);
// 전체 넓이 - (가로/최대공약수 + 세로/최대공약수 -1) * 반복(최대공약수만큼) -> 못쓰는 사각형
long answer = wv * hv - (wv/gcd + hv/gcd - 1) * gcd;
return answer;
}
// 최대공약수
public long findgcd(long w, long h) {
while(h != 0) {
long r = w % h; // 나머지를 구해준다.
w = h;
h = r;
}
return w;
}
}