밑에 소스 이클립스에선 잘 돌아가는데

채점사이트에 올리면 계속

Exception: java.util.NoSuchElementException Maybe at: at Calculation.main(Calculation.java:14)

이거 뜸.


14번째 줄이면 String string=scan2.nextLine(); 여기인데


여기서 왜 오류 나는거임? 더군다나 이클립스에선 되는데...


이게 처음에 7번째 줄에 Scanner가 nextInt()를 읽은다음에 개행문자 앞에 있다가

14번째 줄의 Scanner에서 개행문자를 읽어버려서 그런거임??


이클립스에선 되는데 채점사이트에서 안되니까 어디를 고쳐야될지 모르겄네...




import java.util.*;
public class Calculation{
 
 public static void main(String[] args){
 
  Scanner scan1=new Scanner(System.in);
  int n=scan1.nextInt();
  
  ArrayList<String> input=new ArrayList<String>();
  
  for(int i=0;i<n;i++){
   
   Scanner scan2=new Scanner(System.in);
   String string=scan2.nextLine();
   input.add(i,string);
   
  }
  
  Stack<Integer> stack=new Stack<Integer>();
  
  for(int i=0;i<=input.size()-1;i++){
   for(int j=0;j<=input.get(i).length()-1;j++){
    if(input.get(i).charAt(j)>=48&&input.get(i).charAt(j)<=57)
     stack.push(Integer.parseInt(input.get(i).valueOf(input.get(i).charAt(j))));
    else{
     int n2=stack.pop();
     int n1=stack.pop();
     
     if(input.get(i).charAt(j)=='+')
      stack.push(n1+n2);
     if(input.get(i).charAt(j)=='-')
      stack.push(n1-n2);
     if(input.get(i).charAt(j)=='/')
      stack.push(n1/n2);
     if(input.get(i).charAt(j)=='*')
      stack.push(n1*n2);   
    } 
    
   }
   
   int output=stack.pop();
   System.out.println(output);
  }
  
 }
 
}