From 91c45f78c8a4b0c4fe363fe9d61ab636c6114668 Mon Sep 17 00:00:00 2001 From: oncsr Date: Sun, 9 Nov 2025 23:40:17 +0900 Subject: [PATCH] =?UTF-8?q?[20251109]=20BOJ=20/=20G4=20/=20=EB=8C=80?= =?UTF-8?q?=EC=A0=84=20=EB=8F=84=EC=8B=9C=EC=B2=A0=EB=8F=84=202=ED=98=B8?= =?UTF-8?q?=EC=84=A0=20/=20=EA=B6=8C=ED=98=81=EC=A4=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\353\217\204 2\355\230\270\354\204\240.md" | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 "khj20006/202511/09 BOJ G4 \353\214\200\354\240\204 \353\217\204\354\213\234\354\262\240\353\217\204 2\355\230\270\354\204\240.md" diff --git "a/khj20006/202511/09 BOJ G4 \353\214\200\354\240\204 \353\217\204\354\213\234\354\262\240\353\217\204 2\355\230\270\354\204\240.md" "b/khj20006/202511/09 BOJ G4 \353\214\200\354\240\204 \353\217\204\354\213\234\354\262\240\353\217\204 2\355\230\270\354\204\240.md" new file mode 100644 index 00000000..68a22f26 --- /dev/null +++ "b/khj20006/202511/09 BOJ G4 \353\214\200\354\240\204 \353\217\204\354\213\234\354\262\240\353\217\204 2\355\230\270\354\204\240.md" @@ -0,0 +1,52 @@ +```cpp +#include +using namespace std; + +int N; +vector> v(100001); +vector arr; +bitset<100001> vis; + +void dfs(int n, int p) { + if(n == N) vis[n] = 1; + for(int i:v[n]) if(i != p) { + dfs(i,n); + if(vis[i]) vis[n] = 1; + } +} + +int main() { + cin.tie(0)->sync_with_stdio(0); + + cin>>N; + for(int i=1,a,b;i>a>>b; + v[a].push_back(b); + v[b].push_back(a); + } + + dfs(1,0); + for(int i=1;i<=N;i++) if(!vis[i]) { + int cnt = 0; + queue q; + vis[i] = 1; + q.push(i); + while(!q.empty()) { + int n = q.front(); q.pop(); + cnt++; + for(int j:v[n]) if(!vis[j]) { + vis[j] = 1; + q.push(j); + } + } + arr.push_back(cnt); + } + long long sum = 0, ans = 0; + for(int i:arr) { + ans += sum * i; + sum += i; + } + cout<