반응형
https://programmers.co.kr/learn/courses/30/lessons/83201
자바 코드
class Solution {
public String solution(int[][] scores) {
StringBuilder answer = new StringBuilder();
for(int i=0;i<scores.length;i++){
int max=scores[i][i];
int min=scores[i][i];
int tot=0;
boolean unique=true;
for(int j=0;j<scores.length;j++){
if(i!=j&&unique){
if(scores[i][i]==scores[j][i]) unique=false;
max=Integer.max(max,scores[j][i]);
min=Integer.min(min,scores[j][i]);
}
tot+=scores[j][i];
}
if(scores[i][i]==max&&unique){
answer.append(getGrade((tot-max)/(scores.length-1)));
}else if(scores[i][i]==min&&unique){
answer.append(getGrade((tot-min)/(scores.length-1)));
}else{
answer.append(getGrade((tot)/(scores.length)));
}
}
return answer.toString();
}
public String getGrade(double score){
if(score>=90){
return "A";
}else if(score>=80){
return "B";
}else if(score>=70){
return "C";
}else if(score>=50){
return "D";
}else{
return "F";
}
}
}
문제 풀이
이 문제는 자기자신의 점수가 max 또는 min 이면서 유일할때를 체크 하며 평균을 구할때 빼고
아니면 그냥 다 더해서 평균을 구하면 됩니다.
반응형
'프로그래밍 > 알고리즘 풀이' 카테고리의 다른 글
백준 5014 스타트링크 자바 (0) | 2021.08.17 |
---|---|
백준 7576 토마토 자바 (0) | 2021.08.04 |
백준 1149 RGB거리 자바 (0) | 2021.07.29 |
백준 1932 정수 삼각형 자바 (0) | 2021.07.14 |
백준 2579 계단 오르기 자바 (0) | 2021.07.14 |
댓글