작성
·
196
·
수정됨
0
강사님이 알려주신 정답에서
다른 풀이 함수만 써서 쪼금 응용했는데
왜 런타임 에러가 계속 뜰까요 ㅠ
한참을 고민해봐도 왜 안되는지 답이 안나오네요 ㅠ
import java.util.*;
class Main {
public boolean isPrime(int num){
if(num==1) return false;
for(int i=2; i<num; i++){
if(num%i==0) return false;
}
return true;
}
public ArrayList<Integer> solution(int n, int[] arr){
ArrayList<Integer> answer = new ArrayList<>();
for(int i=0; i<n; i++){
int tmp=Integer.parseInt(new StringBuilder(arr[i]).reverse().toString());
if(isPrime(tmp)) answer.add(tmp);
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
int[] arr=new int[n];
for(int i=0; i<n; i++){
arr[i]=kb.nextInt();
}
for(int x : T.solution(n, arr)){
System.out.print(x+" ");
}
}
}
답변 1
0
안녕하세요^^
int tmp=Integer.parseInt(new StringBuilder(arr[i]).reverse().toString());
구문에서 StringBuilder의 인자로 String이 들어가야 하는데 정수인 arr[i]가 들어가서 에러가 나는 것 같습니다.