기타/백준
백준 C# 2577 숫자의 개수
Krapboss
2024. 7. 9. 14:35
문제
0~ 9까지의 숫자의 각 사용 횟수를 출력
해결
Linq로 숫자를 그룹화 한 다음 세아림
internal class E2577 // 숫자의 개수
{
static void Main(string[] args)
{
int multiple =1;
for (int i = 0; i < 3; i++) multiple *= int.Parse(Console.ReadLine());
var count = multiple.ToString().GroupBy(x => x).ToDictionary(x =>x.Key ,x=> x.Count());
var allDigits = Enumerable.Range(0, 10).Select(d => d.ToString()[0]);
var result = allDigits
.Select(d => new { Digit = d, Count = count.ContainsKey(d) ? count[d] : 0 })
.OrderBy(x => x.Digit);
foreach (var item in result) { Console.WriteLine(item.Count); }
}
}
*count
각 수에 대해 그룹화 후 세아림
*allDigits
0~9의 숫자를 배열화시킴
*result
count에는 0~9의 수가 아닌 사용된 숫자만 있기 때문에, allDigits를 통해 0~9까지의 모든 숫자의 수를 지정