반응형
import java.util.*;
class Solution {
public String solution(String[] table, String[] languages, int[] preference) {
int maxScore = 0;
String maxScoreJob = "";
for(int i = 0; i < table.length; i++){
String[] data = table[i].split(" ");
String job = data[0];
int score = getScore(data, languages, preference);
if(score > maxScore) {
maxScore = score;
maxScoreJob = job;
}
if(score == maxScore) {
if(maxScoreJob.compareTo(job) > 0) {
maxScoreJob = job;
}
}
}
return maxScoreJob;
}
public int getScore(String[] data, String[] languages, int[] preference) {
int score = 0;
for(int i = 0; i < languages.length; i++) {
int idx = Arrays.asList(data).indexOf(languages[i]);
if(idx > -1){
score += (6-idx)*preference[i];
}
}
return score;
}
}
- 아직 많이 부족하고 더 깔끔하게 코드 작성할 수 있게 노력해야겠다
반응형
'개발 > 알고리즘' 카테고리의 다른 글
Programmers - 괄호 회전하기 (0) | 2021.12.29 |
---|---|
Programmers - 오픈채팅방 (0) | 2021.12.25 |
Programmers - [1차] 다트 게임 (0) | 2021.11.19 |
위클리 챌린지 - 최소직사각형 (Java, Javascript) (0) | 2021.11.18 |
Programmers - 크레인 인형뽑기 게임 (0) | 2021.09.09 |