코딩 테스트 준비! (백준)/BFS

[BFS] 백준 14226번 이모티콘(C++)

lee-soo 2025. 5. 9. 17:35

https://www.acmicpc.net/problem/14226

 

 

뭐 이런문제가

다있냐

 

[BFS] 백준 13913번 숨바꼭질 4 (C++)

 

[BFS] 백준 13913번 숨바꼭질 4 (C++)

https://www.acmicpc.net/problem/13913 숨박꼭질의 버전 4 [BFS] 백준 1697번 숨바꼭질(C++) [BFS] 백준 1697번 숨바꼭질(C++)https://www.acmicpc.net/problem/1697 호호호호뭔가느낌이..DP느낌이 났어요 딱 문제 보자마자[동

lee-soo.tistory.com

이거 풀때랑 비슷한데

 

이거랑 다르게 struct를 선언해주니까 훨편하드라구요

#include <iostream>
#include <queue>
#include <vector>

using namespace std;
void bfs();

bool visited[2000];
int s;
typedef struct
{
    int m;
    int c;
    int t;
} obj;

int main()
{
    cin >> s;

    bfs();
}
void bfs()
{
    queue<obj> q;

    q.push({1, 0, 0});
    visited[1] = true;
    while (!q.empty())
    {
        obj temp;

        temp = q.front();
        visited[temp.m] = true;
        if (s == temp.m)
        {
            cout << temp.t << "\n";
            return;
        }
        q.pop();

        if (temp.m + temp.c < 1001 && !visited[temp.m + temp.c])
            q.push({temp.m + temp.c, temp.c, temp.t + 1});

        if (temp.m - 1 >= 1 && !visited[temp.m - 1])
            q.push({temp.m - 1, temp.c, temp.t + 1});

        q.push({temp.m, temp.m, temp.t + 1});
    }
}
 
짜잔
~
숨바꼭질 4번과 굉장히 비슷하니 설명은 넘기겠씀따