π λ§ν¬
https://www.acmicpc.net/problem/2023
https://github.com/jokj624/PS/blob/master/1000-5000/2023.cpp
π€― νμ€ νκΈ°
νμ€ νκΈ° : κ·Έλν λΆλ₯ μλ΄€μΌλ©΄ νμμκΉ ?
π€· λ¬Έμ
π©π» νμ΄
νλ§λλ‘ μμ μμ μμ μμ μμ μ΄λ°μμΌλ‘ λΆμ΄λ©΄ λλ€.
dfs νμμ ν΅ν΄ κ°λ₯νλ€.
νμ리 μμκ° 5κ° (1,3,5,7,9) λ°μ μμΌλ 1,3,5,7,9 λ€μ―κ°λ₯Ό Nμλ¦¬κ° λ λκΉμ§ dfs λ₯Ό ν΅ν΄ λΆμ΄λ©΄ λλ€.
λΆμΌ λ λ§λ€ μμ νλ³μ ν΅ν΄ ν΄λΉ μκ° μμμΈμ§ νλ³νμ¬ μμμΌ λλ§ λΆμΈλ€.
π» μ½λ
//AC
//BOJ 2023 μ κΈ°ν μμ
#include <iostream>
#include <vector>
#include <cmath>
#include <algorithm>
using namespace std;
int pr[5] = {1, 3, 5, 7, 9};
int prime(int num){
if(num == 1) return 0;
else if(num == 2) return 1;
for(int i=2; i<=sqrt(num); i++){
if(!(num % i)) return 0;
}
return 1;
}
void dfs(int x, int N){
if(N==1){
printf("%d\n", x);
return;
}
for(int i=0; i<5; i++){
int next = x * 10 + pr[i];
if(prime(next)){
dfs(next, N-1);
}
}
}
int main(){
int N;
cin >> N;
dfs(2, N);
dfs(3, N);
dfs(5, N);
dfs(7, N);
return 0;
}
'DEV > PS' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[BOJ/20136] λ©ν°ν μ€μΌμ€λ§ 2 (0) | 2021.06.26 |
---|---|
[BOJ/21924] λμ 건μ€, c++ (0) | 2021.06.08 |
[BOJ/21921] λΈλ‘κ·Έ , c++ (0) | 2021.06.08 |
[BOJ/9202] Boggle, c++ (1) | 2021.06.04 |
[BOJ/21872] Deque Game, c++ (0) | 2021.06.04 |