-
[C++] Programmers | 소수 찾기Problem Solving/Programmers 2023. 2. 5. 00:58
소수 찾기
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
✅ Accept Code
// programmers week2-2 // 소수 찾기 #include <bits/stdc++.h> using namespace std; bool visited[8]; bool primeNum[10000000]; set<int> S; void computePrime() { // true: 소수 X, false: 소수 primeNum[0] = true; primeNum[1] = true; primeNum[2] = false; for (int i = 2; i < 10000000; i++) { if (primeNum[i]) continue; for (int j = i * 2; j < 10000000; j += i) { primeNum[j] = true; } } } void DFS(string numbers, int len, int cnt, string num) { if (cnt == len) { S.insert(stoi(num)); return; } for (int i = 0; i < numbers.size(); i++) { if (visited[i]) continue; visited[i] = true; DFS(numbers, len, cnt + 1, num + numbers[i]); visited[i] = false; } } int solution(string numbers) { computePrime(); for (int i = 1; i <= numbers.size(); i++) { DFS(numbers, i, 0, ""); } int res = 0; for (int ele: S) { if (!primeNum[ele]) res++; } return res; }
728x90'Problem Solving > Programmers' 카테고리의 다른 글
[C++] Programmers | 체육복 (0) 2023.02.05 [C++] Programmers | 땅따먹기 (0) 2023.02.05 [C++] Programmers | 올바른 괄호 (0) 2023.02.05 [C++] Programmers study week #2 (0) 2023.02.05 [C++] Programmers | 귤 고르기 (0) 2023.02.05