BOJ 20951 유아와 곰두리차

BOJ 20951 유아와 곰두리차

문제 링크:

문제 내용

NN개의 정점과 MM개의 양방향 간선으로 이루어진 그래프가 있습니다. 이 그래프 위에서 길이 7인 경로의 개수를 구하세요.

경로의 길이는 경로에 포함된 간선의 개수를 의미합니다. 하나의 경로는 같은 정점이나 같은 간선을 여러 번 포함할 수 있습니다.

입력

첫 번째 줄에 NNMM이 주어집니다. (2N100  0002 \le N \le 100\;000, 1Mmin(N(N1)2,100  000)1 \le M \le \min(\frac{N(N-1)}{2}, 100\;000))

다음 MM줄에 걸쳐서 각 간선의 양 끝점 uu, vv가 주어집니다. (1u,vN1 \le u, v \le N, uvu \neq v)

중복된 간선은 주어지지 않습니다.

출력

문제의 정답을 109+710^9+7로 나눈 나머지를 출력합니다.

문제 풀이

스포일러

정점 uu에서 끝나는 길이 ii의 경로의 개수는, 모든 간선 (u,v)(u, v)에 대해 vv에서 끝나는 길이 i1i-1의 경로의 개수들을 알 때 이들을 모두 더해서 구할 수 있습니다.

이를 이용하여 길이 7까지 DP를 하여 모든 정점에 대한 답을 모두 더해서 정답을 구할 수 있습니다.

Last updated on