만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

연결된 부분 그래프

시간 제한1초메모리 제한256 MB

요약
트리에 추가 간선 k개를 더한 그래프에서 간선을 일부 지워도 연결이 유지되는 경우의 수를 998244353으로 나눈 나머지로 구합니다.
난이도

어려움10점 중 9점

유형
트리, 동적 계획법, 비트 연산
정답자
아직 제출이 없습니다

문제

Rikka는 정점 번호가 1,2,…,n1, 2, \ldots, n인 트리를 그린 뒤, 여기에 추가 간선 kk개를 더한다. 간선을 0개 이상 제거해서 남은 그래프가 연결된 상태를 유지하는 방법의 수를 구하라. 답은 998 244 353998\,244\,353으로 나눈 나머지로 출력한다.

입력

첫 줄에 두 정수 nn과 kk가 주어진다 (1≤n≤1051 \le n \le 10^5, 0≤k≤100 \le k \le 10). 이어서 n−1n-1개의 줄에 트리의 간선 aia_i, bib_i가 한 줄에 하나씩 주어진다 (1≤ai,bi≤n1 \le a_i, b_i \le n). 그 다음 kk개의 줄에는 추가 간선 uiu_i, viv_i가 주어진다 (1≤ui,vi≤n1 \le u_i, v_i \le n). 트리 간선들은 실제로 트리를 이루며, 추가 간선을 포함한 그래프에는 자기 자신으로 가는 간선과 중복 간선이 없다.

출력

남은 그래프가 연결되도록 간선을 0개 이상 제거하는 방법의 수를 998 244 353998\,244\,353으로 나눈 나머지를 한 정수로 출력한다.

예제2

  1. 예제 1

    입력
    5 1
    1 2
    2 3
    3 4
    4 5
    1 5
    
    예상 출력
    6
    
  2. 예제 2

    입력
    4 2
    1 2
    2 3
    2 4
    3 4
    1 4
    
    예상 출력
    14