2020. 6. 5. 10:19ㆍ알고리즘_생각하기/프로그래머스 Level 1
문제 설명
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.
제한사항
- arr은 자연수를 담은 배열입니다.
- 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.
- divisor는 자연수입니다.
- array는 길이 1 이상인 배열입니다.
풀이
사용 언어 : C++
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> solution(vector<int> arr, int divisor)
{
vector<int> answer;
for (int i = 0; i < arr.size(); i++)
{
if (arr[i] % divisor == 0) //나누어 떨어지는 수면
{
answer.push_back(arr[i]); //정답에 넣기
}
}
if (answer.empty()) //정답이 비어있으면 나누어떨어지는 수가 없다는 얘기이므로
{
answer.push_back(-1); //-1을 반환한다.
}
else
{
sort(answer.begin(), answer.end()); // #include <algorithm>이 있어야 돌아간다.
}
return answer;
}
'알고리즘_생각하기 > 프로그래머스 Level 1' 카테고리의 다른 글
프로그래머스 - 짝수와 홀수 < Level 1 > (0) | 2020.06.05 |
---|---|
프로그래머스 - 문자열 내 p와 y의 개수 < Level 1 > (0) | 2020.06.05 |
프로그래머스 - 자릿수 더하기 < Level 1 > (0) | 2020.06.05 |
프로그래머스 - 하샤드 수 < Level 1 > (0) | 2020.06.05 |
프로그래머스 - 수박수박수박수박수박수? < Level 1 > (0) | 2020.06.04 |