반응형
이번 문제는 확실히 전 단계에 비해서는 어려워졌다.
일단 주제는 "일차원 배열"이라고 한다.
코딩을 실제 프로젝트에서 해보면 알겠지만
조금 복잡한 알고리즘을 설계할 때면 항상 배열이 등장한다.
그만큼 배열의 효과는 알고리즘에 필수적이며 실제 프로젝트에서 반드시 사용된다.
이 단계도 이차원 배열까지는 안나오기에 할만 할 것이다.
일단 기초적인 방법으로는 두번째 줄을 배열로 저장한 다음
한 원소씩 돌아가면서 개수를 세는 방법이 있다.
(솔직히 첫 줄은 왜 주어진지 모르겠다)
나는 Linq의 메서드를 사용했다.
뭐 알고리즘 능력을 키울때는 안쓰는 게 좋지만 시간 복잡도가 큰 것도 아니고
나는 실제 프로젝트를 많이 진행해봤기에 굳이 피할 이유가 없다고 생각했다.
using System;
using System.Linq;
namespace unicoti {
class Program {
static void Main(string[] args) {
int count = 0;
Console.ReadLine();
string input = (Console.ReadLine()??"");
int.TryParse(Console.ReadLine(), out int num);
count = input.Split(' ').Count(n => n == num.ToString());
Console.WriteLine(count);
}
}
}
첫줄은 버리고,
Linq의 Count와 익명함수 구문을 사용해서 바로 count를 구할 수 있었다.
오늘의 느낀점)
Linq의 Count를 방금 전 프로젝트에서 쓰고 있어서 바로 기억났다.
문제랑 프로젝트랑 만든 코드가 비슷한게 신기하다.
운이 조금 따라줬던 것 같기도 하다.
발전할 점으로는 첫줄이 필요 없어서
Console.ReadLine(); 을
한 줄로 소비했는데, 더 나은 방법을 찾아볼 것이다.
이상으로 도움이 되었길 바라며,
끝.
반응형
'코딩테스트 (C#)' 카테고리의 다른 글
백준 10818 : 최소, 최대 - C# 풀이 (0) | 2024.09.07 |
---|---|
백준 10871 : X보다 작은 수 - C# 풀이 (0) | 2024.09.05 |
백준 10951: A + B - 4 C# 풀이 (1) | 2024.09.03 |
백준 10952 : A+B-5 C# 풀이 (0) | 2024.09.03 |
백준 2439 : 별 찍기 -2 C# 풀이 (0) | 2024.08.31 |
댓글