본문 바로가기

Development/Baekjoon102

[C#] 10816번: 숫자 카드 2 목차백준 단계별로 풀어보기25.11.0114단계: 집합과 맵10816번: 숫자 카드 2문제 링크 : https://www.acmicpc.net/problem/10816 문제를 풀기 위해 알아야 할 개념>> Dictionary.TryAdd(Key, Value): 지정된 키와 값을 Dictionary에 추가하려고 시도한다. --> Dictionary에 키와 값이 성공적으로 추가되었다면 true, 그렇지 않으면 false를 반환한다. ※ 공식 문서 - Dictionary.TryAdd(TKey, TValue).TryAdd(TKey, TValue) 메서드 (System.Collections.Generic)" data-og-description="지정된 키와 값을 사전에 추가하려고 시도합니다." data-og-ho.. 2025. 11. 1.
[C#] 1620번: 나는야 포켓몬 마스터 이다솜 목차백준 단계별로 풀어보기25.10.3114단계: 집합과 맵1620번: 나는야 포켓몬 마스터 이다솜문제 링크 : https://www.acmicpc.net/problem/1620 문제를 풀기 위해 알아야 할 개념>> Dictionary: 숫자 index 대신 Key를 Value와 함께 저장하는 Collection이다. - 특징Key를 통해 Value 값에 빠르게 접근할 수 있다. --> O(1)의 시간복잡도를 가진다.Value는 중복될 수 있지만 Key는 중복될 수 없다. - 주요 메서드Add(Key, Value) : Dictionary에 Key와 Value를 저장한다.Remove(Key) : Dictionary에 있는 Key를 제거한다. 따라서 해당 Key에 있는 Value 값도 전부 제거된다.Cont.. 2025. 10. 31.
[C#] 7785번: 회사에 있는 사람 목차백준 단계별로 풀어보기25.10.3014단계: 집합과 맵7785번: 회사에 있는 사람문제 링크 : https://www.acmicpc.net/problem/7785 문제를 풀기 위해 알아야 할 개념>> OrderByDescending(): LINQ 기능 중 하나로, 시퀀스의 요소를 내림차순으로 정렬한다.데이터를 변경하지 않고 데이터의 순서만 변경한다.평균 O(n log n)의 시간복잡도를 가진다.var sorted = collection.OrderByDescending(KeySelector)// collection : 정렬할 대상 (List, Array, HashSet, Dictionary 등 IEnumerable 형식)// KeySelector : 정렬 기준을 지정하는 람다식 (ex1: x => x.. 2025. 10. 30.
[C#] 14425번: 문자열 집합 목차백준 단계별로 풀어보기25.10.2914단계: 집합과 맵14425번: 문자열 집합문제 링크 : https://www.acmicpc.net/problem/14425 문제 풀이입력값을 받아 각각 int값으로 변환하여 문자열 개수를 담는 변수 n 과 m 에 담는다.집합 S의 문자열을 담을 HashSet 인 s 를 초기화한다.for 반복문을 통해 집합 S의 문자열을 HashSet s 에 추가한다.결과값을 담을 int형 변수 result 를 0으로 초기화하고, for 반복문을 통해 입력값으로 받은 문자열이 s 에 있는지 Contains 함수로 확인하고, 포함되어 있다면 result 의 값을 1 증가시킨다.찾은 결과값을 StringBuilder에 담아 출력한다. 정답 코드using System.IO;using .. 2025. 10. 29.
[C#] 10815번: 숫자 카드 목차백준 단계별로 풀어보기25.10.2814단계: 집합과 맵10815번: 숫자 카드문제 링크 : https://www.acmicpc.net/problem/10815 문제를 풀기 위해 알아야 할 개념>> HashSet: 해시 테이블을 기반으로 구현된 집합 데이터 구조로, 데이터의 순서를 보장하지 않으며 데이터의 중복을 허용하지 않는다. - 특징탐색에 특화된 자료구조로, 평균 O(1)의 시간복잡도로 데이터를 탐색, 삽입, 삭제가 가능하다. --> 해시 충돌이 많이 일어나면 최악의 경우 O(n)의 시간복잡도를 가진다.대량의 데이터를 효율적으로 관리할 수 있으며, 특히 고유한 값들을 유지해야 하는 경우에 유용하다.해시값을 저장해야 하기 때문에 메모리를 많이 차지한다. - 언제 사용하기 좋은가?중복된 데이터를 제.. 2025. 10. 28.
[C#] 18870번: 좌표 압축 목차백준 단계별로 풀어보기25.10.2713단계: 정렬18870번: 좌표 압축문제 링크 : https://www.acmicpc.net/problem/18870 문제를 풀기 위해 알아야 할 개념>> 튜플, 병합/합병 정렬(MergeSort): 아래 링크에 자세히 설명해두었다. > 튜플 (Tuple): 여러 데이터 요소를 그룹화하는 간" data-og-host="mobics.tistory.com" data-og-source-url="https://mobics.tistory.com/193" data-og-url="https://mobics.tistory.com/193" data-og-image="https://scrap.kakaocdn.net/dn/mzU2m/hyZMofVf95/kCFIuXvS1YBUiQaDv.. 2025. 10. 27.