2022 KAKAO TECH INTERNSHIP-성격 유형 검사하기- JAVA
2025. 2. 23. 21:57ㆍ백준 및 프로그래머스/프로그래머스 LV 1
문제 설명




입출력 예시

1.문제를 보면 굉장히 쉽게 느껴질 수 있습니다. 실제 survey에 있는 2명을 비교합니다.(choices[i]에 따라서 점수를 매겨줍니다).
2.예를들어 1,2,3일 경우 A의 점수를 매길 수 있고 5,6,7이라면 N에게 점수를 매길 수 있습니다.
3."AN"이며 choices가 3일 경우 A에게 1점. 6일 경우 N에게 2점.
3.점수를 다 매겨준 후 젤 높은 점수를 가진 사람들끼리 출력해주면 되는 문제입니다.
4.혹시나 점수가 같을 경우는 사전의 앞 순서를 출력해주면 됩니다.
5.예를 들어 A와N이 점수가 같다고 가정하면 A를 출력해주시면 됩니다.
문제 풀면서 MBTI 느낌의 문제라고 생각하시면 쉽게 풀릴 수 있을 거라 생각합니다.
전체 코드
import java.util.*;
import java.lang.*;
class Solution {
public String solution(String[] survey, int[] choices) {
String answer = "";
// R,T,C,F,J,M,A,N의 점수를 kakao에 저장.
Map<Character ,Integer> kakao = new HashMap<>();
kakao.put('R',0);
kakao.put('T',0);
kakao.put('C',0);
kakao.put('F',0);
kakao.put('J',0);
kakao.put('M',0);
kakao.put('A',0);
kakao.put('N',0);
// ["AN", "CF", "MJ", "RT", "NA"] 비교
// A와 N , C와 F, M와 J, R와 T , N와 A 비교 후 점수 산정
for(int i = 0 ; i<survey.length; i++){
char name1 = survey[i].charAt(0);
char name2 = survey[i].charAt(1);
int score = choices[i];
if(score<4){
if(score == 1){
kakao.put(name1,kakao.get(name1)+3);
}else if(score == 2){
kakao.put(name1,kakao.get(name1)+2);
}else if( score == 3){
kakao.put(name1,kakao.get(name1)+1);
}
}else{
if(score == 5){
kakao.put(name2,kakao.get(name2)+1);
}else if(score == 6){
kakao.put(name2,kakao.get(name2)+2);
}else if(score == 7) {
kakao.put(name2,kakao.get(name2)+3);
}
}
}
//(R,T),(C,F),(J,M),(A,N) 비교후 성격 유형 확정.
if(kakao.get('R') < kakao.get('T')){
answer+="T";
}else{
answer+="R";
}
if(kakao.get('C') < kakao.get('F')){
answer+="F";
}else{
answer+="C";
}
if(kakao.get('J') < kakao.get('M')){
answer+="M";
}else{
answer+="J";
}
if(kakao.get('A') < kakao.get('N')){
answer+="N";
}else{
answer+="A";
}
return answer;
}
}
'백준 및 프로그래머스 > 프로그래머스 LV 1' 카테고리의 다른 글
| 2021 KAKAO BLIND RECRUITMENT신규 아이디 추천 - JAVA (0) | 2025.02.25 |
|---|---|
| 2020 카카오 인턴십 - 키패드 누르기 - JAVA (1) | 2025.02.24 |
| 크레인 인형뽑기 게임 - JAVA (0) | 2025.02.21 |
| 숫자 짝꿍 -JAVA (0) | 2025.02.21 |
| 프로그래머스 LV1(6) (0) | 2024.01.29 |