728x90
반응형
문제
풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
class Solution{
public int solution(int[] array) {
int result=0;
int arrayMax=0;
for(int i=0; i<array.length; i++) { //매개변수로 들어온 배열의 최대값을 구함
if(array[i]>arrayMax) {
arrayMax=array[i];
}
}
int[] count=new int[arrayMax+1]; //크기가 최대값+1 인 배열을 하나 생성
for(int j=0; j<array.length; j++) { //매개변수 배열에 들어있는 정수번째마다
count[array[j]]++; //새로 만든 배열에 1을 더해줌
}
int countMax=0;
for(int m=0; m<count.length; m++) { //새로만든 배열의 최대값을 구함
if(count[m]>countMax) {
countMax=count[m]; //새로만든 배열의 m번째 요소가 최대값이라면
result=m; //매개변수로 들어온 배열의 m 이 최빈값
}
}
int rep=0;
for(int n=0; n<count.length; n++) { //그 최대값이 중복으로 있는지를 확인
if(countMax==count[n]) { //중복이 없다면 rep는 1,
rep++; //중복이 있다면 reo는 2이상
}
}
if(rep!=1) {
result=-1;
}
return result;
}
}
|
cs |
반응형
728x90
반응형
'[JAVA] 프로그래머스 스쿨 > Java Lv.0' 카테고리의 다른 글
[프로그래머스/Java] Lv.0 피자 나눠 먹기 (1) (0) | 2022.11.17 |
---|---|
[프로그래머스/Java] Lv.0 짝수는 싫어요 (0) | 2022.11.17 |
[프로그래머스/Java] Lv.0 중앙값 구하기 (0) | 2022.11.16 |
[프로그래머스/Java] Lv.0 나머지 구하기 (0) | 2022.11.16 |
[프로그래머스/Java] Lv.0 배열 두 배 만들기 (0) | 2022.11.16 |