Study
프로그래머스-소수 만들기 본문
코딩테스트 연습 - 소수 만들기
주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때
programmers.co.kr
<풀이>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
bool prime(int x){
if(x == 0 || x == 1) return 0;
for(int i=2; i<x; i++){
if(x % i == 0){
return 0;
}
}
return 1;
}
int solution(vector<int> nums) {
int answer = 0;
int res = 0;
vector<int> v;
for(int i=0; i<nums.size()-2; i++){
for(int j=i+1; j<nums.size()-1; j++){
for(int k = j+1; k<nums.size(); k++){
res+=nums[i]+nums[j]+nums[k];
v.push_back(res);
res = 0;
}
}
}
for(int i=0; i<v.size(); i++){
if(prime(v[i])) answer++;
}
return answer;
}
'알고리즘 > C++ 문제풀이' 카테고리의 다른 글
프로그래머스-크레인 인형뽑기 (0) | 2021.07.14 |
---|---|
프로그래머스 -짝지어 제거하기 (0) | 2021.07.13 |
프로그래머스-실패율 (0) | 2021.07.07 |
프로그래머스-신규 아이디 추천 (0) | 2021.07.06 |
프로그래머스-로또의 최고 순위와 최저 순위 (0) | 2021.07.06 |