Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 백준 1924번
- 개발상식
- 카카오1차
- 백준 1924번 java
- 객체프로그래밍
- 문자열포맷
- 카카오코테
- 자바문자열
- 자바
- 자료구조 트리
- 프로그래머스
- 프렌즈4블록java
- 공부정리
- java method
- java
- 백준 1000번 java
- Java heap
- 자료구조힙
- 코테준비
- 카카오코딩테스트
- 프렌즈4블록
- heap정렬
- 힙정렬자바
- 객체프로그래밍이란
- 알고리즘
- 백준
- 코딩테스트기출
- heap
- 백준 1000번
- 카카오기출
Archives
- Today
- Total
일단 시작해보는 블로그
[알고리즘_풀이] 프로그래머스 level2 _ 소수 찾기 본문
import java.util.*;
class Solution {
static Set<Integer> combinationList = new HashSet<>();
// 소수 판별하기 boolean
public static boolean isPrimeNumber(int N){
// 소수는 2부터 시작한다.
//System.out.println(N);
if(N <=1){
return false;
}
// 소수가 아닐 경우 바로 return true;
for(int i=2; i<N; i++){
// 나눠 떨어진다는 것은 약수가 존재한다는 것.
// 즉 소수가 아님.
if(N%i == 0){
return false;
}
}
return true;
}
// [1, 2, 3]
static void comb(int[] num, boolean[] visited, int r, String str) {
if(r == -1){
return;
}
if(isPrimeNumber(Integer.parseInt(str))){
combinationList.add(Integer.parseInt(str));
}
for(int i=0; i<num.length; i++){
if(visited[i] == false){
visited[i] = true;
comb(num, visited, r-1, str + String.valueOf(num[i]));
visited[i] = false;
}
}
return;
}
public int solution(String numbers) {
//String으로 된 숫자배열(String type)을 int배열로 만들기.
int[] num = new int[numbers.length()];
boolean[] visited = new boolean[num.length];
for(int i=0; i<numbers.length(); i++){
num[i] = numbers.charAt(i) - '0';
}
// 소수의 개수
int answer = 0;
// 종이 조각을 붙여 소수를 몇개 만들 수 있는지
// 소수? 자신보다 작은 수 중에서 %값이 ==0인것이 1뿐인 것.
// num배열에서 숫자를 조합해서 여기 넣어줘야함.
// 배열로 만들 수 있는 경우의 수
for(int i=0; i<num.length; i++){
visited[i] = true;
comb(num, visited, num.length, String.valueOf(num[i]));
visited[i] = false;
}
return combinationList.size();
}
}
'CS > 알고리즘 풀이' 카테고리의 다른 글
알고리즘풀이_ 프로그래머스 타겟넘버 java (0) | 2020.03.04 |
---|---|
[알고리즘_풀이] 초성으로 노래가사 일치하는지 확인하기 (2) | 2019.12.03 |
[알고리즘_풀이] 백준 2667번, 단지번호 붙이기 ,DFS, BFS (0) | 2019.09.17 |
[알고리즘_풀이] 백준 11047번 동전0, Greedy (0) | 2019.09.16 |
[알고리즘_풀이] 백준 2579번 계단 오르기, DP (0) | 2019.09.16 |
Comments