using System;
public class Solution {
public int[] solution(int[] answers) {
int num1 = 0;
int num2 = 0;
int num3 = 0;
for (int i = 0; i < answers.Length; i++)
{
if(answers[i] == random1(i + 1)) num1++;
if(answers[i] == random2(i + 1)) num2++;
if(answers[i] == random3(i + 1)) num3++;
}
if (num1 == num2 && num2 == num3)
{
int[] array = { 1, 2, 3 };
return array;
}
else if (num1 == num2 && num1 > num3)
{
int[] array = { 1, 2 };
return array;
}
else if (num2 == num3 && num2 > num1)
{
int[] array = { 2, 3 };
return array;
}
else if(num1 == num3 && num1 > num2)
{
int[] array = { 1, 3 };
return array;
}
else
{
if(num1 > num2 && num1 > num3)
{
int[] array = { 1 };
return array;
}
else if(num2 > num1 && num2 > num3)
{
int[] array = { 2 };
return array;
}
else
{
int[] array = { 3 };
return array;
}
}
}
public int random1(int x)
{
x = x % 5;
if (x == 0) return 5;
return x;
}
public int random2(int x)
{
x = x % 8;
if (x % 2 != 0) return 2;
else if (x == 2) return 1;
else if (x == 4) return 3;
else if (x == 6) return 4;
else return 5;
}
public int random3(int x)
{
x = x % 10;
if (x == 1 || x == 2) return 3;
else if (x == 3 || x == 4) return 1;
else if (x == 5 || x == 6) return 2;
else if (x == 7 || x == 8) return 4;
else return 5;
}
}
각각 함수를 만들어서 총 정답 수를 구해서 비교함.
'C# 알고리즘 코드카타' 카테고리의 다른 글
59. 덧칠하기 (0) | 2023.12.18 |
---|---|
58. 소수 만들기 (0) | 2023.12.14 |
56. 과일 장수 (0) | 2023.12.12 |
55. 카드 뭉치 (0) | 2023.12.11 |
54. 2016년 (0) | 2023.12.08 |