ALGORITHM/PROGRAMMERS

[프로그래머스] 위클리 챌린지 2주차

0298 2021. 8. 9. 22:06

https://programmers.co.kr/learn/courses/30/lessons/83201

 

코딩테스트 연습 - 2주차

[[100,90,98,88,65],[50,45,99,85,77],[47,88,95,80,67],[61,57,100,80,65],[24,90,94,75,65]] "FBABD" [[70,49,90],[68,50,38],[73,31,100]] "CFD"

programmers.co.kr

2021-08-09


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
class Solution {
    public String solution(int[][] scores) {
        StringBuilder sb = new StringBuilder();
 
        for(int j = 0; j < scores.length; j++) {
            int my = scores[j][j];
            int sum = 0;
            int min = 987654321;
            int max = 0;
            for(int i = 0; i < scores[j].length; i++) {
                if(i == j) continue;
                sum += scores[i][j];
                min = Math.min(min, scores[i][j]);
                max = Math.max(max, scores[i][j]);
            }
            if(min > my || max < my) sum /= (scores[j].length - 1);
            else sum = (sum + my) / scores[j].length;
            
            if(sum >= 90) sb.append("A");
            else if(sum >= 80) sb.append("B");
            else if(sum >= 70) sb.append("C");
            else if(sum >= 50) sb.append("D");
            else sb.append("F");
        }
 
        return sb.toString();
    }
}
cs