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

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

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

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

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

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

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

Frontend-Deep-Dive

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ฐ€์žฅ ๋จผ ๋…ธ๋“œ / ์ตœ๋‹จ ๊ฒฝ๋กœ, ๋‹ค์ต์ŠคํŠธ๋ผ
Problem_Solving

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ฐ€์žฅ ๋จผ ๋…ธ๋“œ / ์ตœ๋‹จ ๊ฒฝ๋กœ, ๋‹ค์ต์ŠคํŠธ๋ผ

2020. 11. 21. 16:15

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


 

 

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

 

 

ํ•œ ์ถœ๋ฐœ ์ •์ ์—์„œ ๋‹ค๋ฅธ ๋ชจ๋“  ์ •์ ์œผ๋กœ์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ ์ด๋™ ๋น„์šฉ์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค.

๊ฐ ๋…ธ๋“œ๋กœ ์ด๋™ํ•˜๋Š” ์ตœ์†Œ ๋น„์šฉ์„ ๊ณ„์‚ฐํ•˜์—ฌ ๊ทธ์ค‘ ์ตœ๋Œ€๋ฅผ ๊ตฌํ•œ ํ›„,

๋™์ผํ•œ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๋Š” ๊ฒฝ๋กœ์˜ ์ˆ˜๋ฅผ ์นด์šดํŠธ ํ–ˆ๋‹ค.

 

์ด ๋ฌธ์ œ๋Š” ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ’€์ดํ–ˆ๋‹ค.

 

 

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

 

 

 

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

#include <queue>
#include <vector>
#include <algorithm>
using namespace std;

const int MAX = 20001;
const int INF = 1e9;
int dist[MAX] = {0, };


int solution(int n, vector<vector<int>> edge) {
    int max_cost = 0;
    int result = 0;
    priority_queue<pair<int, int>>pq;   // ๋น„์šฉ, ๋…ธ๋“œ๋ฒˆํ˜ธ
    vector<int>nodes[n+1];
    // ๊ฐ ๋…ธ๋“œ๊นŒ์ง€ ๋„๋‹ฌํ•˜๋Š”๋ฐ ์ตœ์†Œ ๋น„์šฉ(ํฐ ๊ฐ’์œผ๋กœ ์„ค์ •)
    fill_n(dist, MAX, INF);
    // ๋…ธ๋“œ ๊ธฐ์ค€์œผ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๋…ธ๋“œ๋“ค์˜ ์ •๋ณด๋ฅผ ํ‘œ๊ธฐ
    for (int i = 0; i < edge.size(); ++i) {
        int vertex_a = edge[i][0];
        int vertex_b = edge[i][1];
        nodes[vertex_a].push_back(vertex_b);
        nodes[vertex_b].push_back(vertex_a);
    }
    
    pq.push({0, 1});
    // ์šฐ์„ ์ˆœ์œ„ ํ ๋‚ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ๋จผ์ € ๋ฐ˜ํ™˜ํ•  ๊ฒƒ.
    // ์šฐ์„ ์ˆœ์œ„ ํ๋Š” ์ตœ๋Œ€ ํž™์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ cost๋ฅผ ์Œ์ˆ˜ํ™”ํ•ด์„œ ์ตœ์†Œ ํž™์œผ๋กœ ์‚ฌ์šฉ.
    while (!pq.empty()) {
        int cur_cost = pq.top().first * -1;
        int cur_node = pq.top().second;
        pq.pop();
        
        for (int i = 0; i < nodes[cur_node].size(); ++i) {
            int next_node = nodes[cur_node][i];
            
            if (dist[next_node] <= cur_cost + 1) continue;
            
            dist[next_node] = cur_cost + 1;
            pq.push({dist[next_node]*-1, next_node});
        }
    }
    
    max_cost = *max_element(dist+2, dist+n);
    for (int i = 2; i <= n; ++i) {
        if (dist[i] == max_cost)    result++;
    }
    return result;
}

 

๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ

์ •์  ๊ฐœ์ˆ˜๊ฐ€ V์ด๊ณ  ๊ฐ„์„  ๊ฐฏ์ˆ˜๊ฐ€ E์ผ ๋•Œ ์ผ๋ฐ˜์ ์ธ ๋ฐฉ์‹์œผ๋กœ๋Š” ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ O(V^2)๊ฐ€ ๋˜๋ฉฐ,

์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด Heap์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ๊ฐ„๋ณต์žก๋„๊ฐ€ O(ElogV)๊ฐ€ ๋œ๋‹ค.

์ฆ‰, ๋…ธ๋“œ์˜ ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฉด ๋งŽ์•„์งˆ์ˆ˜๋ก, ์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ํšจ๊ณผ์ ์ด๋‹ค.

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

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

[BOJ] ๋ฐฑ์ค€ 2667 ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ / BFS, DFS  (0) 2021.01.04
[BOJ] ๋ฐฑ์ค€ 2887 ํ–‰์„ฑ ํ„ฐ๋„ / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ  (0) 2020.11.21
[BOJ] ๋ฐฑ์ค€ 1647 ๋„์‹œ ๋ถ„ํ•  ๊ณ„ํš / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ  (0) 2020.11.20
[BOJ] ๋ฐฑ์ค€ 1922 ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ  (0) 2020.11.19
[BOJ] ๋ฐฑ์ค€ 14503 ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ / ๊ตฌํ˜„  (0) 2020.11.06
    'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [BOJ] ๋ฐฑ์ค€ 2667 ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ / BFS, DFS
    • [BOJ] ๋ฐฑ์ค€ 2887 ํ–‰์„ฑ ํ„ฐ๋„ / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ
    • [BOJ] ๋ฐฑ์ค€ 1647 ๋„์‹œ ๋ถ„ํ•  ๊ณ„ํš / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ
    • [BOJ] ๋ฐฑ์ค€ 1922 ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ / ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST), ํฌ๋ฃจ์Šค์นผ
    glowing713
    glowing713

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