인프런 커뮤니티 질문&답변

kimjinseok님의 프로필 이미지
kimjinseok

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

6. 뒤집은 소수

코드 한번 검토 부탁드립니다^^

작성

·

225

0

안녕하세요! 강의 보기 전에 다른 방식으로 풀어봤는데
코드 한번 리뷰 부탁드립니다 ㅎㅎ
stringBulider의 reverse를 사용했는데 소요시간에 영향을 미치는지 궁금합니다!

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
String [] arrStr = new String[num];
for(int i =0;i<num;i++){
arrStr[i] = scanner.next();
}
for(String s : arrStr){
int ans = check(reverse(s));
if(ans != 0){
System.out.print(ans + " ");
}

}
}
public static int reverse(String str){
str=new StringBuilder(str).reverse().toString();
return Integer.valueOf(str);
}
public static int check(int num){
if(num == 1) return 0;
for (int i=2;i<num/2;i++){
if(num%i == 0){
return 0;
}
}
return num;
}
}

답변 2

0

check 메서드에 num / 2를 하신 이유가 궁금합니다 !
해당 코드에서 40을 넣었을 경우 뒤집으면 4가 되는데, 4는 소수가 아니므로 num / 2가 아닌 num이 돼야 하지 않을까 생각합니다 ㅎㅎ

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

네. 잘 하신 코드입니다.

kimjinseok님의 프로필 이미지
kimjinseok

작성한 질문수

질문하기