작성
·
249
·
수정됨
0
선생님이 강의하시는데로 코드쳤는데 마지막 샘플예시처럼
5 5 입력하면 => 1 이 나와야하는데 -14 가 나와버리네요
코드가 동일한데 왜 결과가 다를까요 ㅠ
이래는 작성한 코드입니다
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer stringTokenizer = new StringTokenizer(bufferedReader.readLine());
int suNo = Integer.parseInt(stringTokenizer.nextToken());// 숫자의 개수
int quizNo = Integer.parseInt(stringTokenizer.nextToken());//질의개수
long [] s = new long[suNo+1]; //합배열 선언
stringTokenizer = new StringTokenizer(bufferedReader.readLine()); //한줄로 쭉 받아올때 stringTokenizer 사용
for(int i=1; i<=suNo; i++){
s[i] = s[i-1]+Integer.parseInt(stringTokenizer.nextToken());
}
for(int i=0 ; i<s.length;i++) {
System.out.print("s:"+s[i]+" ");
}
for(int q=0; q<quizNo; q++){
stringTokenizer = new StringTokenizer(bufferedReader.readLine());
int i = Integer.parseInt(stringTokenizer.nextToken());
int j = Integer.parseInt(stringTokenizer.nextToken());
System.out.println(s[j] - s[i-1]);
}
}
답변 1
0
일단 첫 번째로
for(int i=0 ; i<s.length;i++) { System.out.print("s:"+s[i]+" "); }
부분은 강사님 코드와 다른 것 같습니다.
그리고 두 번째로 위 코드를 제외한 부분을 인텔리제이에서 실행시켜봤는데 결과가 12 9 1로 잘 나옵니다! 혹시 입력할 때 오타가 있었던 건 아닌가요??