1. 유형
구현
2. 풀이
visit배열을 써서 방문한 곳과 방문 안 한 곳을 나눠서 풀 수도 있지만, 그랬다간 시간초과가 날것이다.
때문에 가능한 경우를 나누어서 생각 해야한다.
아래처럼 나오는 숫자가 3가지의 경우가 있다.
즉, 겹치는 부분이 있기때문에 끝 점을 계속 갱신 하면서, (끝점 - 처음점)을 빼는 식으로
총 길이를 구해야 한다.
3. 코드
package 구현;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Beak_15922아우으우아으이야 {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(in.readLine()," ");
int N = Integer.valueOf(st.nextToken());
int a1,b1,a2,b2;
st = new StringTokenizer(in.readLine()," ");
a1=Integer.valueOf(st.nextToken());
b1=Integer.valueOf(st.nextToken());
int sum=0;
for(int i=0;i<N-1; i++) {
st = new StringTokenizer(in.readLine()," ");
a2= Integer.valueOf(st.nextToken());
b2 = Integer.valueOf(st.nextToken());
if(b1>=b2) {
continue;
}else if(b1>=a2) {
b1=b2;
}else {
sum+=Math.abs(b1-a1);
a1=a2;
b1=b2;
}
}
sum+=Math.abs(b1-a1);
System.out.println(sum);
}
}
'알고리즘 > 백준' 카테고리의 다른 글
[백준 - 1238] 골드3 - 파티 (0) | 2020.11.14 |
---|---|
[백준 - 14698] 골드4 - 전생했더니 슬라임 연구자였던 건에 대하여(Hard) (0) | 2020.11.12 |
[백준 - 2931] 골드3 - 가스관 (구현) (0) | 2020.11.08 |
[백준 - 17281] 골드4 - ⚾ (구현) (0) | 2020.11.07 |
[백준 - 15685] 골드4 - 드래곤 커브 (0) | 2020.11.07 |