-
[C++] Programmers | k진수에서 소수 개수 구하기Problem Solving/Programmers 2023. 3. 1. 00:52
k진수에서 소수 개수 구하기
✅ Accept Code
// programmers week3-3 // k진수에서 소수 개수 구하기 #include <bits/stdc++.h> using namespace std; bool isPrime(long long n) { if (n < 2) return false; for (int i = 2; i <= sqrt(n); ++i) { if (n % i == 0) return false; } return true; } int solution(int n, int k) { // n(10진수)을 k진수로 변환 vector<int> V; while (n) { V.push_back(n % k); n /= k; } vector<string> nums; string str = ""; for (int i = V.size() - 1; i >= 0; i--) { if (i == 0 && V[i] != 0) { str += (V[i] + '0'); nums.push_back(str); break; } if (V[i] == 0) { if (str.size() > 0) { nums.push_back(str); str = ""; } } else { str += (V[i] + '0'); } } int cnt = 0; for (int i = 0; i < nums.size(); i++) { if (isPrime(stoll(nums[i]))) cnt++; } return cnt; }
728x90'Problem Solving > Programmers' 카테고리의 다른 글
[C++] Programmers | 여행 경로 (0) 2023.03.01 [C++] Programmers | 124 나라의 숫자 (0) 2023.03.01 [C++] Programmers | 무인도 여행 (0) 2023.02.05 [C++] Programmers | 구명보트 (0) 2023.02.05 [C++] Programmers study week #3 (0) 2023.02.05