Algorithm/PS 3

[Algorithm] BFS란?

* 해당 글은 BaaaaaaaarkingDog 님의 블로그 강의를 참고하여 작성한 글입니다.BFS란?: Breadth First Search.- 다차원 배열에서 각 칸을 방문할 때 너비를 우선으로 방문하는 알고리즘- 가까운 것부터 차례대로 탐색하는 방식- 층 (layer) 단위로 퍼져 나간다.BFS의 핵심 도구: 큐(Queue)먼저 발견한 가까운 칸부터 처리하기 위해FIFO(First In First Out) 인 큐를 쓴다.BFS의 기본 흐름1. 시작점을 큐에 넣는다2. 방문 처리3. 큐에서 하나 꺼낸다4. 그 점과 연결된 점들을 큐에 넣는다5. 큐가 빌 때까지 반복BFS의 전형적인 코드 구조해당 강의에서 제시해준 코드 구조이다.https://github.com/encrypted-def/basic-alg..

Algorithm/PS 2026.02.09

[BOJ] 11720 - 숫자의 합

※ 책『Do it! 알고리즘 코딩테스트 (C++편 ) 』에 기반한 글입니다. https://www.acmicpc.net/problem/11720 간단한 문제지만 형 변환에 대한 내용을 정리하려고 글을 작성한다. char to intinput[i] - '0';가장 먼저 해당 문제에서 사용한 형 변환 방법이다.input은 string형이므로, input[i]는 char형이다.이때 '0'을 빼주는 것은 '0'의 아스키 코드 값 48을 빼주는 것이다.0부터 9까지가 10진수 48 ~ 57이기 때문에, char형에서 '0'을 빼준다면 숫자로 변환이 가능하다.string형 -> 숫자형#include string sNum = "1234";int inum = stoi(sNum);stoi() 함수를 사용하여 strin..

Algorithm/PS 2026.01.01

[BOJ] 10773 - 제로

출처: https://www.acmicpc.net/problem/10773How to solve?Main Problem: 0을 입력할 때마다 최근에 쓴 수를 지워야 함Solve Idea: Stack을 사용한다.0이 아닐때는 push로 값을 대입하고, 0일 때는 pop을 이용하여 stack의 top에 있는 값을 지운다. #define _CRT_SECURE_NO_WARNINGS#include #define MAX 100001int Stack[MAX];int top = -1;void push(int item);int pop();int main(){ int iArrayLen; int iInputNum; int iStack[MAX]; int iSum = 0; int iDel; scanf("%d", &iArray..

Algorithm/PS 2024.04.29