glowing713
Frontend-Deep-Dive
glowing713
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (97)
    • Languages (11)
      • JavaScript ๐Ÿ’› (3)
      • Python ๐Ÿ (4)
      • Java โ˜•๏ธ (3)
      • Swift ๐Ÿงก (1)
    • Computer_Science (1)
      • Computer_Network ๐Ÿ•ธ (1)
    • Web_Frontend (4)
      • Vue.js (1)
    • Problem_Solving (76)
    • Server (1)
      • Spring ๐Ÿ€ (1)
    • AI (2)
      • NLP ๐Ÿ—ฃ (1)
      • AI_Math โž— (1)
    • ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊พธ๋ฏธ๊ธฐ โœŒ (1)
    • ์ƒ๊ฐ์ •๋ฆฌ โœ๐Ÿป (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ๐Ÿง‘๐Ÿปโ€๐Ÿ’ปGithub

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • DP
  • 2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ
  • Stack
  • brute-force
  • mst
  • c++
  • Python
  • ์ด๋ถ„ํƒ์ƒ‰
  • ๋™์ ๊ณ„ํš๋ฒ•
  • binary search
  • ์™„์ „ํƒ์ƒ‰
  • ์นด์นด์˜ค ๊ธฐ์ถœ
  • ps
  • BOJ
  • Baekjoon
  • Algorithm
  • Java
  • bfs
  • boostcampaitech
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
glowing713

Frontend-Deep-Dive

[BOJ] ๋ฐฑ์ค€ 2606 ๋ฐ”์ด๋Ÿฌ์Šค / ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)
Problem_Solving

[BOJ] ๋ฐฑ์ค€ 2606 ๋ฐ”์ด๋Ÿฌ์Šค / ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)

2020. 11. 5. 15:31

์ด๋ฏธ์ง€๋ฅผ ํด๋ฆญํ•˜๋ฉด ๋ฌธ์ œ ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.


 

 

๐Ÿ’ฃ ๋ฌธ์ œ ์ดํ•ด

 

 

1๋ฒˆ ์ปดํ“จํ„ฐ์— ๋ฐ”์ด๋Ÿฌ์Šค๊ฐ€ ๊ฐ์—ผ๋˜๋ฉด ์ด์™€ ์—ฐ๊ฒฐ๋˜์–ด ๋ฐ”์ด๋Ÿฌ์Šค์— ๊ฐ์—ผ๋˜๋Š” ์ปดํ“จํ„ฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

1๋ฒˆ ์ปดํ“จํ„ฐ(๋…ธ๋“œ)์— ์—ฐ๊ฒฐ๋œ ์ปดํ“จํ„ฐ(๋…ธ๋“œ) ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค.

 

๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS) ๊ธฐ๋ฒ•์œผ๋กœ ํ’€์ดํ–ˆ๋‹ค.

 

 

๐Ÿ’ญ ํ’€์ด ๊ณผ์ •

 

 

 

์ž‘์„ฑ ์–ธ์–ด: C++

#include <iostream>
#include <deque>
#include <algorithm>
using namespace std;

int visited[101] = {0, };

int bfs(deque<deque<int>> nodes) {
    int virused = 0;
    deque<int> queue;
    // 1๋ฒˆ ์ปดํ“จํ„ฐ์—์„œ ์‹œ์ž‘, ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ
    queue.push_back(1);
    visited[1] = 1;
    
    while (!queue.empty()) {
        int now_node = queue.front();
        queue.pop_front();
        
        for (int i = 0; i < nodes[now_node].size(); ++i) {
            int linked_node = nodes[now_node][i];
            // ์•„์ง ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์ปดํ“จํ„ฐ๋ฅผ ์ฐพ์•„์„œ ํ์— ๋„ฃ๊ณ 
            // ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ, ๋ฐ”์ด๋Ÿฌ์Šค ๊ฐ์—ผ ์ˆ˜ 1 ์ฆ๊ฐ€
            if (!visited[linked_node]) {
                queue.push_back(linked_node);
                visited[linked_node] = 1;
                virused += 1;
            }
        }
    }
    
    return virused;
}

int main() {
    deque<deque<int>> nodes;
    deque<int> link;
    int total_com = 0, links = 0;
    
    cin >> total_com;
    for (int i = 0; i <= total_com; ++i) {
        nodes.push_back(link);
    }
    
    cin >> links;
    while (links--) {
        int a = 0, b = 0;
        cin >> a >> b;
        // ๋„คํŠธ์›Œํฌ๋Š” ์–‘๋ฐฉํ–ฅ์œผ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ์„ค์ •
        nodes[a].push_back(b);
        nodes[b].push_back(a);
    }
    
    for (int i = 0; i <= total_com; ++i) {
        sort(nodes[i].begin(), nodes[i].end()); // ๊ฐ ๋…ธ๋“œ์˜ ์—ฐ๊ฒฐ์ •๋ณด๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
    }
    
    cout << bfs(nodes) << endl;
    
    return 0;
}

 

 

 

 

๐Ÿ† ๋ฐฐ์šด ์ 

 

 

๊ตฌํ˜„์ด ์–ด๋ ค์šด ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์—ˆ๋Š”๋ฐ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ๋ฅผ ํ์— ์‚ฝ์ž…ํ•  ๋•Œ๊ฐ€ ์•„๋‹ˆ๋ผ (for ๋ฌธ ๋‚ด๋ถ€)

pop_front ํ•  ๋•Œ ์‚ฝ์ž…ํ•˜๋ฉด ์ด๋ฏธ ํ์— ๋„ฃ์–ด๋‘” ๋…ธ๋“œ๋„ ๋‹ค์‹œ ์‚ฝ์ž…ํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค. => ๋…ธ๋“œ๋ฅผ ์ค‘๋ณตํ•ด์„œ ์„ผ๋‹ค๋Š” ๊ฒƒ.

 

๐Ÿ“Œ ํ์— ์‚ฝ์ž…ํ•˜๋ฉด์„œ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌํ•ด์„œ ํ•ด๊ฒฐ!!

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[BOJ] ๋ฐฑ์ค€ 1922 ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ  (0) 2020.11.19
[BOJ] ๋ฐฑ์ค€ 14503 ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ / ๊ตฌํ˜„  (0) 2020.11.06
[2020 KAKAO BLIND RECRUITMENT] ๋ฌธ์ž์—ด ์••์ถ•  (0) 2020.09.01
[BOJ] ๋ฐฑ์ค€ 7576 ํ† ๋งˆํ†  / ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)  (0) 2020.08.31
[2018 KAKAO BLIND RECRUITMENT] ๋‹คํŠธ ๊ฒŒ์ž„  (0) 2020.08.29
    'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [BOJ] ๋ฐฑ์ค€ 1922 ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ
    • [BOJ] ๋ฐฑ์ค€ 14503 ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ / ๊ตฌํ˜„
    • [2020 KAKAO BLIND RECRUITMENT] ๋ฌธ์ž์—ด ์••์ถ•
    • [BOJ] ๋ฐฑ์ค€ 7576 ํ† ๋งˆํ†  / ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)
    glowing713
    glowing713

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”