#include<stdio.h> #include<vector> #include<algorithm> using namespace std; int n, p, sw[1000]; vector<int> adj[1000]; int main() { scanf("%d %d", &n, &p); for (int i = 0; i < p; i++) { int a, b; scanf("%d %d", &a, &b); adj[a - 1].push_back(b - 1); adj[b - 1].push_back(a - 1); } int res = 1e3; for (int i = 0; i < n; i++) { fill(sw, sw + n, 0); int j = i, s = 0, cnt = 0; do { for (auto it : adj[j]) sw[j]++, sw[it] -= 2; s += sw[j]; cnt += s > 0; } while ((j = (j + 1) % n) != i); res = min(res, cnt); } printf("%d", res); return 0; }
2215번: 원형 네트워크
https://www.acmicpc.net/problem/2215
피드 구독하기:
댓글
(
Atom
)
댓글 없음 :
댓글 쓰기