본문 바로가기

전체 글198

[C#] 13241번: 최소공배수 목차백준 단계별로 풀어보기25.11.0615단계: 약수, 배수와 소수 213241번: 최소공배수문제 링크 : https://www.acmicpc.net/problem/13241 문제를 풀기 위해 알아야 할 개념>> 유클리드 호제법: 아래 링크에 정리해두었다. 두 자연" data-og-host="mobics.tistory.com" data-og-source-url="https://mobics.tistory.com/209" data-og-url="https://mobics.tistory.com/209" data-og-image="https://blog.kakaocdn.net/dna/5hYQo/hyZM1rao6G/AAAAAAAAAAAAAAAAAAAAAJNewD7iKG4VwhiQ5Yf2dCXU4rxcoX253rWsrkzogO-1/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1764514799&allow_ip=&allow_referer=&signature=4Re5Xnpu0lHM%2Bvcj%2FTYV54QqbEg%3D 2025. 11. 6.
[C#] 1934번: 최소공배수 목차백준 단계별로 풀어보기25.11.0515단계: 약수, 배수와 소수 21934번: 최소공배수문제 링크 : https://www.acmicpc.net/problem/1934 문제를 풀기 위해 알아야 할 개념>> 유클리드 호제법 (Euclidean Algorithm): 두 자연수의 최대공약수를 구하는 알고리즘. 이때 호제법이란 두 수가 서로 상대방 수를 나누어서 결국 원하는 수를 얻는 알고리즘을 뜻한다.--> 두 자연수 a, b에 대해서 a를 b로 나눈 나머지를 r이라 하면(단, a > b) a와 b의 최대공약수는 b와 r의 최대공약수와 같다. 이 성질에 따라 b를 r로 나눈 나머지 r'를 구하고, 다시 r을 r'로 나눈 나머지를 구하는 과정을 반복하여 나머지가 0이 되었을 때 나누는 수가 a와 b의 최대.. 2025. 11. 5.
[C#] 11478번: 서로 다른 부분 문자열의 개수 목차백준 단계별로 풀어보기25.11.0414단계: 집합과 맵11478번: 서로 다른 부분 문자열의 개수문제 링크 : https://www.acmicpc.net/problem/11478 문제 풀이: 서로 다른 부분 문자열의 개수를 구하는 것이므로 중복이 없어야 한다. 따라서 HashSet 자료구조에 모든 부분 문자열을 담고 HashSet의 크기를 출력하면 된다.StreamReader로 입력값을 받아 문자열을 담을 변수 input 에 담고, 부분 문자열을 담을 HashSet인 hash 를 초기화한다.이중 for문을 통해 부분 문자열을 구하고 hash 에 추가한다. i 는 시작 index, j 는 끝 index이다. 임시 문자열 temp 를 시작 index가 바뀔 때마다 초기화한다. 끝 ind.. 2025. 11. 4.
[C#] 1269번: 대칭 차집합 목차백준 단계별로 풀어보기25.11.0314단계: 집합과 맵1269번: 대칭 차집합문제 링크 : https://www.acmicpc.net/problem/1269 문제를 풀기 위해 알아야 할 개념>> 대칭 차집합의 개수: 두 집합 A와 B가 있을 때, 대칭 차집합은 (A - B)와 (B - A)의 합집합 즉, 전체 집합에서 교집합을 제외한 부분을 의미한다. --> 전체 집합 = (A + B) - (A ∩ B) 이다. 따라서 대칭 차집합은 (A + B) - (2 × A ∩ B) 이다. 문제 풀이: 두 집합 A와 B의 원소는 중복이 없고 두 집합의 교집합만 찾으면 되기 때문에 HashSet 자료구조를 사용하기에 적합하다.StreamReader로 입력값을 받아 각각 int값으로 변환하여 집합 A의 원소의 개수.. 2025. 11. 3.
[C#] 1764번: 듣보잡 목차백준 단계별로 풀어보기25.11.0214단계: 집합과 맵1764번: 듣보잡문제 링크 : https://www.acmicpc.net/problem/1764 문제를 풀기 위해 알아야 할 개념>> HashSet.Contains(T item): HashSet에 해당 요소가 포함되어 있는지 확인한다. --> 해당 요소가 있으면 true, 없으면 false를 반환한다. ※ 공식 문서 - HashSet.Contains(T).Contains(T) 메서드 (System.Collections.Generic)" data-og-description="HashSet 개체에 지정된 요소가 포함되어 있는지 확인합니다." data-og-host="learn.microsoft.com" data-og-source-url="https.. 2025. 11. 2.
[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.