#include <string>
#include <vector>
#include <algorithm> // sort 함수를 사용하기 위해 필요해요.
using namespace std;
vector<int> solution(vector<int> arr, int divisor) {
// 1. 나누어 떨어지는 값들을 담을 비어있는 vector 'answer'를 만들어요.
vector<int> answer;
// 2. 'arr' 배열의 모든 요소를 하나씩 확인해요.
for(int i = 0; i < arr.size(); i++)
{
// 3. 현재 요소가 divisor로 나누어 떨어지는지 확인해요. (나머지가 0인지)
if(arr[i] % divisor == 0)
{
// 4. 나누어 떨어진다면, 'answer' 벡터에 그 값을 추가해요.
answer.push_back(arr[i]);
}
}
// 5. 반복문이 끝난 후, 'answer' 벡터가 비어있는지 확인해요.
// 비어있다는 건 나누어 떨어지는 숫자가 하나도 없었다는 뜻이에요.
if(answer.empty()) // answer.size() == 0 으로 확인해도 좋아요.
{
// 6. 비어있다면, 문제의 조건에 따라 -1을 추가해요.
answer.push_back(-1);
}
else
{
// 7. 비어있지 않다면, 오름차순으로 정렬해요.
sort(answer.begin(), answer.end());
}
// 8. 최종적으로 완성된 'answer' 벡터를 반환해요.
return answer;
}