https://www.acmicpc.net/problem/20530
20530번: 양분
첫째 줄에 두 자연수 $N$, $Q$가 주어진다. 주어지는 그래프의 정점과 간선의 개수가 $N$개이며 쿼리가 $Q$개 주어진다는 것을 의미한다. 둘째 줄부터 $N$개의 줄에는 $i$번 간선이 연결하는 두 정점
www.acmicpc.net
1. 트리에서 쿼리는 1이다.
2. 트리에서 간선 하나만 추가되었다.
3. 나올 수 있는 경우는 1 아니면 2이다.
-> 사이클을 알아내서 그 간선을 지나간다면 2 아니면 1 출력한다.
그래프로 입력을 받을 때, 도착 노드에 1씩 더해 준다.(그래프에 방향이 있다고 생각한다.)
그렇게 한다면 루트와 사이클 도착점을 알 수 있었다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
n, q = map(int, input().split())
field = {}
nums = [0 for _ in range(n + 1)]
for _ in range(n):
a,b = map(int, input().split())
nums[b] += 1
if a not in field:
field[a] = [b]
elif b not in field[a]:
field[a].append(b)
nums[0] = 1
root = nums.index(min(nums))
cycle = nums.index(max(nums))
|
근데 이 이상을 더 할 수 없었다. 내가 좀 더 성장해서 꼭 풀고 말겠다!
확실히 교내에서 하는 대회보다 난이도가 높았다.
공부를 열심히 해서 올해는 꼭 4문제를 풀어야겠다. 문제마다 1등으로 풀면 상품을 주는데 노오오오력해 봐야겠다.
'코딩 자산관리 > Coding Test' 카테고리의 다른 글
[Codeforces Round #697 (Div. 3)] B. New Year's Number (0) | 2021.01.27 |
---|---|
[Codeforces Round #697 (Div. 3)] A.Odd_Divisor (0) | 2021.01.27 |
[Codeforces Round #696 (Div. 2)] A. Puzzle From the Future (1) | 2021.01.20 |
[Good Bye, BOJ 2020!] B.가장 가까운 세 사람의 심리적 거리 (1) | 2021.01.03 |
[Good Bye, BOJ 2020!] A.끝말잇기 (2) | 2021.01.03 |