개발자 톡
JAVA 런타임에러
- 등록일
- 2024-03-25 17:20:06
- 조회수
- 323
- 작성자
- hoony4509
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(bf.readLine());
int n = Integer.parseInt(st.nextToken()); //제한 속도 구간 갯수 n
int m = Integer.parseInt(st.nextToken()); //테스트 속도 구간 갯수 m
int[] limit = new int[100]; //각 제한 속도 구간의 미터당 속도 리스트 limit
int[] test = new int [100]; //각 테스트 속도 구간의 미터당 속도 리스트 test
int last = 0; //마지막 숫자 last.(구간 속도정보를 이어서 입력하기 위한 저장 값)
for(int i=0; i<n; i++){
StringTokenizer st1 = new StringTokenizer(bf.readLine());
int ld = Integer.parseInt(st1.nextToken());
int ls = Integer.parseInt(st1.nextToken());
for(int j=last; j<ld+last; j++){
limit[j] = ls;
}
last += ld;
}
last = 0;
for(int a=0; a<n; a++){
StringTokenizer st2 = new StringTokenizer(bf.readLine());
int td = Integer.parseInt(st2.nextToken());
int ts = Integer.parseInt(st2.nextToken());
for(int b=last; b<td+last; b++){
test[b] = ts;
}
last += td;
}
int max = 0; //구간 속도 차이의 최대값 max
for(int x=0; x<100; x++){
if(test[x]-limit[x]>max){
max = test[x]-limit[x];
}
// System.out.print((test[x]-limit[x])+" ");
}
System.out.println(max);
}
}
위 코드로 제출하면 모두 정답으로 뜨는데 6번에서만 런타임 에러가 뜹니다.. 혹시 이유를 찾아주실 분ㅠㅠ