전체 글 77

[Boost Tutorial 1] Timer.1 학습

Timer.1 - Using a timer synchronously위 링크에 있는 Boost의 튜토리얼을 따라하며 공부해보는 글이다. 동기화 타이머 써보기가 주제이다. Timer.1 - Using a timer synchronouslyThis tutorial program introduces asio by showing how to perform a blocking wait on a timer. We start by including the necessary header files. All of the asio classes can be used by simply including the "asio.hpp" header file. #include #include All programswww.boost.o..

Server 2025.09.09

BFS - 31575

문제 설명가로 N, 세로 M이 주어진다.시작점은 좌측 상단도착점은 우측 하단이동은 우측과 하단만 가능시작점이 도착점일 수 있음문제 풀이1이 문제는 BFS, DFS, DP로 풀 수 있는 문제로 분류되어 있다.우선 익숙한 DFS로 풀이를 해보았다.아래는 코드다.더보기using System;using System.Collections.Generic;namespace StudyCS{ class Program { public struct Location { public Location() { x = 0; y = 0; } public int x; ..

카테고리 없음 2025.09.09

백트래킹 - 4251

문제 설명영어로 되어있지만 문제 해석을 하자면 데이터 셋의 갯수인 K, 부서진 수도관의 갯수 n, 수리트럭의 이동속도 v와 부서진 수도관의 정보들인 좌표 x,y 그리고 누수가 될 시간 t, 누수량 r이 주어졌을 때 누수량이 최소로 되게 하는 경로를 찾아서 최소 누수량을 출력하는 문제이다. 문제에 쓰이는 알고리즘 파악이 문제는 백트래킹으로 구분되어 있다.백트래킹이란?브루트포스 알고리즘과 dfs(깊이 우선 탐색) 알고리즘과 유사하지만 해당 경로가 답을 찾을 가능성이 없으면 마지막으로 기록해둔 정점으로 돌아가는 로직이 추가된 방법이다. 문제 풀이아래는 코드이다.더보기using System;using System.Collections.Generic;namespace StudyCS{ public struct..

BaekJoon 2025.09.09

그래프와 순회 - 24479

백준 온라인 코딩 문제풀이https://www.acmicpc.net/ Baekjoon Online JudgeBaekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.www.acmicpc.net단계별로 풀어보기 - 그래프와 순회 단계 - 24479번 알고리즘 수업 - 깊이 우선 탐색 1 문제이다.우선 깊이 우선 탐색(dfs)를 처음 풀어보기 때문에 어떤 방식으로 구현이 되어야 하는지 알아보겠다 깊이 우선 탐색(dfs)란깊이 우선 탐색(DFS, Depth-First Search)은 그래프나 트리에서 한 경로를 따라 최대한 깊이 탐색한 후, 더 이상 갈 곳이 없으면 되돌아와 다른 경로를 탐색하는 알고리즘이다. 이 과정에서 재귀 함수나 스택 자료구조를 사용해 구현할 수..

BaekJoon 2025.03.30

기하학 - 1002

백준 온라인 코딩 문제풀이https://www.acmicpc.net/ Baekjoon Online JudgeBaekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.www.acmicpc.net기하학 1002번 터렛 문제좌표 (x1, y1), (x2, y2)와 한 점까지의 거리를 각각 r1, r2로 주어졌을 때 몇개의 점이 겹치는지를 구하는 문제다. 우선 다음과 같이 접근해보았다결국 좌표 두 개에서 거리가 주어졌을 때 있을 수 있는 좌표는 두 원의 교점으로 볼 수 있다. 따라서 경우의 수는1. 원이 완벽하게 겹칠 때2. 두 점에서 교점이 있을 때3. 한 점에서 교점이 있을 때4. 교점이 없을 때이렇게 4가지 경우의 수가 있다. 그리고 교점의 좌표를 구할 이유가 없..

BaekJoon 2025.03.29

Greedy Algorithm - 11399

백준 온라인 코딩 문제풀이https://www.acmicpc.net/ Baekjoon Online JudgeBaekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.www.acmicpc.net11399번 - ATM 문제  우선 알고리즘 방식이 Greedy Algorithm(탐욕 알고리즘)으로 기재가 되어있다. 따라서 우선 탐욕 알고리즘이 무엇인지부터 정리해보았다. 탐욕 알고리즘- 현재 상황에서 가장 최적이라고 생각되는 선택을 반복적으로 수행- 즉, 미래를 고려하지 않고 매 순간 최선의 선택을 하는 방식 특징탐욕 선택 속성 (Greedy Choice Property)- 현재의 선택이 이후의 결과에 영향을 미치지 않아야 한다. 최적 부분 구조 (Optimal Sub..

BaekJoon 2025.03.27

Dynamic Programing - 1463

백준 온라인 코딩 문제풀이https://www.acmicpc.net/ Baekjoon Online JudgeBaekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.www.acmicpc.net1로 만들기 문제 알고리즘 관련 공부를 안했어서 DP 문제의 접근법을 이번에 새로 알게 되었다. DP 알고리즘은 Top-Down(하향식) 방식과 Bottom-Up(상향식) 방식으로 크게 2가지가 존재한다. DP 문제로 유명한 것은 특정 정수를 최소 횟수로 만들기(이 문제)와 피보나치 수열, 배낭 문제, 최장 공통부분 수열 등이 있다고 한다.(GPT로 공부하며 예시를 받았음) 또한 장단점은 다음과 같다고 한다.장점 1. 중복 계산을 방지하여 효율성을 극대화. 2. 최적화 문제..

BaekJoon 2025.03.26

자료구조 9012

백준 온라인 코딩 문제풀이https://www.acmicpc.net/ Baekjoon Online JudgeBaekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.www.acmicpc.net 최근에 C++ 공부를 C#으로 백준을 푼 뒤 그걸 생성형  AI를 사용해 C++로 바꿔서 공부하는 방식으로 진행해보려고 한다.실버 4 괄호 문제이다. 우선 받을 줄 수를 입력 받고 열은 괄호의 갯수가 닫은 괄호의 갯수보다 적으면 NO 같으면 YES를 출력해야하는 문제이다.  예제 입력과 출력을 통해 알 수 있는 사실은 열은 괄호나 닫은 괄호만 있는 경우에는 성립하지 않는다. 개인적으로는 이 문제를 접근하기에 열은 괄호의 갯수를 카운트해서 닫은 괄호의 갯수만큼 카운트에서 빼..

BaekJoon 2025.03.25