아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

데카르트 곱 최소 신장 트리

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

요약
연결된 두 가중 그래프 G와 H가 주어질 때, 카테시안 곱 G□H의 최소 신장 트리 전체 가중치를 구한다.
난이도

어려움10점 중 9점

유형
그래프, 최소 신장 트리, 수학, 조합론
정답자
아직 제출이 없습니다

문제

가중 무향 단순 그래프 GG와 HH가 주어진다. 두 그래프의 데카르트 곱 G□HG \square H는 정점 집합이 두 그래프 정점 집합의 데카르트 곱 V(G)×V(H)V(G) \times V(H)이고, 정점 (u1,v1)(u_1, v_1)과 (u2,v2)(u_2, v_2) 사이에 다음 조건을 만족할 때에만 간선이 있는 그래프로 정의한다.

  • v1=v2v_1 = v_2이고 GG에 간선 (u1,u2)(u_1, u_2)가 있다. 이때 G□HG \square H의 간선 ((u1,v1),(u2,v2))((u_1, v_1), (u_2, v_2))의 가중치는 GG의 간선 (u1,u2)(u_1, u_2)와 같다.
  • 또는 u1=u2u_1 = u_2이고 HH에 간선 (v1,v2)(v_1, v_2)가 있다. 이때 G□HG \square H의 간선 ((u1,v1),(u2,v2))((u_1, v_1), (u_2, v_2))의 가중치는 HH의 간선 (v1,v2)(v_1, v_2)와 같다.

연결 그래프 GG와 HH가 주어질 때, G□HG \square H의 최소 신장 트리의 총 가중치를 구하여라.

입력

첫째 줄에 네 정수 n1,m1,n2,m2n_1, m_1, n_2, m_2가 주어진다(2≤n1,n2≤1052 \leq n_1, n_2 \leq 10^5; 1≤m1,m2≤1051 \leq m_1, m_2 \leq 10^5). 각각 GG의 정점 수, GG의 간선 수, HH의 정점 수, HH의 간선 수이다.

다음 m1m_1개 줄에는 세 정수 ui,vi,wiu_i, v_i, w_i가 주어진다(0≤ui,vi≤n1−10 \leq u_i, v_i \leq n_1 - 1; 1≤wi≤1081 \leq w_i \leq 10^8). GG에서 정점 uiu_i와 viv_i를 잇는 가중치 wiw_i의 간선을 나타낸다.

다음 m2m_2개 줄에는 세 정수 ui,vi,wiu_i, v_i, w_i가 주어진다(0≤ui,vi≤n2−10 \leq u_i, v_i \leq n_2 - 1; 1≤wi≤1081 \leq w_i \leq 10^8). HH에서 정점 uiu_i와 viv_i를 잇는 가중치 wiw_i의 간선을 나타낸다.

그래프 GG와 HH는 단순하고 연결되어 있음이 보장된다. 그래프가 단순하다는 것은 자기 자신으로 향하는 간선이 없고, 두 정점 사이에 간선이 많아야 하나 존재한다는 뜻이다.

출력

G□HG \square H의 최소 신장 트리의 가중치를 정수 하나로 출력한다.

예제1

  1. 예제 1

    입력
    4 4 3 2
    0 1 3
    1 2 2
    2 3 2
    3 0 5
    0 1 1
    1 2 1
    
    예상 출력
    15