728x90
https://school.programmers.co.kr/learn/courses/30/lessons/181916?language=csharp
소스코드
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
public class Solution
{
public int solution(int a, int b, int c, int d)
{
int answer = 0;
List<int> list = new List<int>() { a, b, c, d };
var listGroup = list.GroupBy(sameNum => sameNum)
.OrderByDescending(sameNum => sameNum.Count())
.Select(s => (s.Key, s.Count()))
.ToArray();
if (listGroup[0].Item2 == 4)
answer = 1111 * listGroup[0].Item1;
else if (listGroup[0].Item2 == 3)
answer = (10 * listGroup[0].Item1 + listGroup[1].Item1) * (10 * listGroup[0].Item1 + listGroup[1].Item1);
else if (listGroup[0].Item2 == 2)
{
if (listGroup.Length > 2)
answer = listGroup[1].Item1 * listGroup[2].Item1;
else
answer = (listGroup[0].Item1 + listGroup[1].Item1) * Math.Abs(listGroup[0].Item1 - listGroup[1].Item1);
}
else
answer = list.Min();
return answer;
}
}
728x90
'코딩공부 > 프로그래머스' 카테고리의 다른 글
[프로그래머스]Lv.0 9로 나눈 나머지 C# (string 배열 형변환 없이) (0) | 2023.06.07 |
---|---|
[프로그래머스]Lv.0 글자 이어 붙여 문자열 만들기 C# (0) | 2023.06.07 |
[프로그래머스]Lv.0 간단한 논리 연산 C# (0) | 2023.06.07 |
[프로그래머스]Lv.0 배열 만들기 4 C# (0) | 2023.06.02 |
[프로그래머스]Lv.0 콜라츠 수열 만들기 C# (0) | 2023.06.02 |