알고리즘
[HackerRank] Plus Minus
haesa_s
2021. 11. 5. 18:18
# Plus Minus (Warmup)
[문제]
[코드]
void plusMinus(vector<int> arr) {
double plus = 0;
double minus = 0;
double zero = 0;
set<int> sorted;
for(int i = 0; i < arr.size(); i++)
{
if(arr[i] > 0) plus++;
else if(arr[i] < 0) minus++;
else zero++;
}
plus /= arr.size();
minus /= arr.size();
zero /= arr.size();
cout << fixed;
cout.precision(6);
cout << plus << endl;
cout << minus << endl;
cout << zero << endl;
}
[코드설명]
배열 원소들의 양수, 음수, 0의 비율을 구하는 문제다. (단, 소수점 아래 6자리까지 구해야함.)
if-else if로 arr의 원소들이 양수, 음수, 0일 때를 분기해서 각각의 개수를 구하고, arr의 크기로 나눴다.
각 결과는 소수점 아래 6자리까지 구해야하기 때문에 fixed로 소수점을 고정시켜 출력하도록하고, 소수점 아래 자릿수는 precision(6)으로 6자리까지 나오도록 설정했다.
[채점 결과]