-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
배열 2_6번 런타임에러
23.04.13 15:54 작성 조회수 248
0
배열을 이용하지 않고 StringBuilder 를 이용해서 코드를 짜봤는데 런타임에러가 뜹니다
따로 이유가 있나요?
답변을 작성해보세요.
0
opix0306
질문자2023.04.14
import java.util.Scanner;
public class Main {
public String solution(int n) {
StringBuilder answer = new StringBuilder();
Scanner sa = new Scanner(System.in);
for (int i = 0; i < n; i++) {
int num = sa.nextInt(); // 자연수 입력 받기
// 자연수를 뒤집기 위해 StringBuilder 클래스를 사용
StringBuilder sb = new StringBuilder(String.valueOf(num));
sb.reverse(); // StringBuilder 클래스의 reverse() 메서드를 사용하여 뒤집기
// 뒤집은 수가 소수인지 확인하기
int reverseNum = Integer.parseInt(sb.toString());
boolean isPrime = true; // 소수 여부를 저장할 변수
if (reverseNum <= 1) { // 뒤집은 수가 1보다 작거나 같으면 소수가 아님
isPrime = false;
} else { // 뒤집은 수가 2 이상인 경우 소수 여부 확인
for (int j = 2; j <= Math.sqrt(reverseNum); j++) {
if (reverseNum % j == 0) {
isPrime = false;
break;
}
}
}
// 소수이면 출력하기
if (isPrime) {
if (answer.length() > 0) answer.append(" ");
answer.append(reverseNum);
}
}
return answer.toString().trim();
}
public static void main(String[] args) {
Main T = new Main();
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println(T.solution(n));
}
}
김태원
지식공유자2023.04.14
네. 모든 케이스를 직접 다 해봤는데 어러 없이 답이 잘 나옵니다. 아무래도 채점사이트가 스트링빌더를 잘 못 인식하는게 아닌가 싶습니다. 코드는 전혀 문제 없습니다.
답변 1