오답노트
최빈값 세는 부분 -> 잘못 설계함.
최빈값 세는 부분 설계 너무 대충함.시간안에 끝내려고...이러면 안된다.
import java.util.Scanner;
public class Main{
// 평균, 최빈값 구하는 문제
// 최빈값 둘 이상인 경우 앞에거 출력
// 열개 주어짐, 배열 열개짜리
// a[20]
// v[1010]
// sum
// for(i 1~=10) a 입력
// sum+=a[i]
// v[i]+=1;
(1) ====> v[a[i]]+=1 로 설계했어야
// avg = sum/10;
// cnt=0;idx=1;
// for(i 1~=1000)
// v[i]>cnt{idx=i}
//idx 최빈값
public static int[] a = new int[20];
public static int[] v = new int[1010];
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int sum=0;
for(int i=1;i<=10;i++)
{
a[i]=scan.nextInt();
sum+=a[i];
v[a[i]]+=1;
}
int avg = sum/10;
int maxCnt=0;int max=0;
for(int i=1;i<=1000;i++)
{
if(maxCnt<v[i])//최빈값 세는 것
{
max = i;//최빈값 갱신
maxCnt = v[i];//최빈값의 개수 계속 갱신, 같은거는 무시(위에서)
}
}
System.out.println(avg);
System.out.println(max);
scan.close();
}
}