https://school.programmers.co.kr/learn/courses/30/lessons/118666?language=csharp
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
using System;
public class Solution {
// 굳이 문제처럼 각 점수를 나눌 필요가 있을까??
// 예시로 R, T 는 점수 하나로 묶으면 점수 기록은 4개만 해도 되는걸
public string solution(string[] survey, int[] choices)
{
string answer = "";
// 성격 유형을 나누는 알파벳 문자들
char[,] survey_type = new char[4, 2] { { 'R', 'T' }, { 'C', 'F' },
{ 'J', 'M' }, { 'A', 'N' } };
// 각 항목 점수
int[] score = new int[4];
// 성격 유형 검사 설문 수
for (int i = 0; i < survey.Length; i++)
{
// 해당 설문 유형 판별
for (int j = 0; j < score.Length; j++)
{
// 설문 유형이 일치하면, 점수 연산
if (survey[i][0] == survey_type[j, 0])
score[j] -= (choices[i]-4);
else if(survey[i][0] == survey_type[j, 1])
score[j] += (choices[i] - 4);
}
}
// 각 유형 점수에 따라 성격 유형 판정
for (int i = 0; i < score.Length; i++)
{
if (score[i] < 0)
answer += survey_type[i, 1];
else
answer += survey_type[i, 0];
}
return answer;
}
}
'프로그래머스' 카테고리의 다른 글
C# - 택배 배달과 수거하기 (0) | 2023.04.03 |
---|---|
C# - 신고 결과 받기 (0) | 2023.03.23 |
C++ - 더 맵게 (0) | 2023.03.09 |
C# - 타겟 넘버 (0) | 2023.03.02 |
C# - 조이스틱 (0) | 2023.02.28 |