알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄
https://level.goorm.io/exam/43238/%EC%86%8C%EC%88%98-%ED%8C%90%EB%B3%84/quiz/1
구름LEVEL
코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이
level.goorm.io
Think🤔
소수를 판별하는 알고리즘을 구현하라고 한다.
자기와 숫자 1 이외에 다른 값으로 나눠 떨어지지 않으면 소수이다.
Solution✍
import java.io.*;
class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int input = Integer.parseInt(br.readLine());
String answer = "True"; // 기본값을 True로 설정해준다.
for(int i=2; i<input; i++){ // 1과 자기자신은 검증할 필요가 없기 때문에 2부터 시작 자기자신 값 전까지
if(input % i == 0){ // 1과 자기자신 이외에 나눠 떨어지면 False 소수가 아니다.
answer = "False";
break;
}
}
System.out.print(answer);
br.close();
}
}
다른 좋은 코드는 없나 확인해보았다.
break;를 잊고 있었다. close도 잊고 있었고...
마지막 부분을 삼항 연산자로 바꿔서 출력 해도 될 것이다.
import java.io.*;
class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int input = Integer.parseInt(br.readLine());
boolean answer = true; // 기본값을 True로 설정해준다.
for(int i=2; i<input; i++){ // 1과 자기자신은 검증할 필요가 없기 때문에 2부터 시작 자기자신 값 전까지
if(input % i == 0){ // 1과 자기자신 이외에 나눠 떨어지면 False 소수가 아니다.
answer = false;
break;
}
}
System.out.print(answer == true ? "True" : "False");
br.close();
}
}
Review🤩
삼항 연산자, answer 그리고 close와 break를 잊지 말자
'Algorithm' 카테고리의 다른 글
[구름] 절대값 (0) | 2021.12.25 |
---|---|
[구름] 약수의 합 (0) | 2021.12.25 |
[구름] Substring (0) | 2021.12.25 |
[구름] Bubble Sort (0) | 2021.12.25 |
[구름] 369 게임 (0) | 2021.12.25 |