Reference
Description
맙소사 해커랭크는 문제가 영어다
당황하지 않고 구글 번역을 돌린다
영어로 된 지문을 다 읽으면 시간을 너무 많이 잡아먹는다!(나는 원어민이 아니다)
정수배열에서 양수,음수,0인 요소의 비율을 계산한다.
소수점 6개 이하로 찍어야한다
Solution
public static void plusMinus(List<Integer> arr) {
// Write your code here
int plus = 0;
int minus = 0;
int zero = 0;
for(int i = 0; i < arr.size(); i++) {
if(arr.get(i) > 0) {
plus ++;
} else if(arr.get(i) < 0 ) {
minus ++;
} else {
zero ++;
}
}
double resultPlus = (double) plus / arr.size();
double resultMinus = (double) minus / arr.size();
double resultZero = (double) zero / arr.size();
System.out.printf("%.6f\n%.6f\n%.6f", resultPlus, resultMinus, resultZero);
}
List에서 값을 뽑아와서 0보다 클 때, 0보다 작을 때, 0일때의 갯수를 찾아서 더해주고 전체 리스트의 사이즈에서 나눈다.
코드 짤땐
System.out.printf("%.6f\n",resultPlus);
System.out.printf("%.6f\n",resultMinus);
System.out.printf("%.6f",resultZero);
이렇게 했는데 오버헤드가 날 수 있다고 한다.