최단 경로 쌍
시간 제한1초메모리 제한1024 MB
1에서 각 정점으로 가는 최단 경로 중 내부 정점 집합이 서로 겹치지 않는 두 개가 존재하는지 판별한다.
문제
개의 정점과 개의 간선을 가진 방향 그래프가 주어진다. 그래프의 정점은 으로 번호가 매겨져 있다.
정점 을 제외한 모든 정점 에 대하여, 정점 에서 정점 로 가는 최단 경로 쌍을 찾아보고자 한다. 이때, 최단 경로 쌍이란 두 개의 최단 경로 로 구성되어 있으며 다음 두 조건을 만족한다.
- 두 최단 경로에 포함된 정점 집합을 각각 라 할 때, 를 만족한다.
입력
첫 번째 줄에 정수 과 이 공백으로 구분되어 주어진다.
두 번째 줄부터 개의 줄에 걸쳐 세 정수 가 공백으로 구분되어 주어진다. 이는 정점 에서 정점 로 가는 가중치가 인 간선이 있음을 의미한다.
임의의 두 정점 에 대하여, 정점 에서 정점 로 가는 간선은 최대 하나만 주어진다.
출력
첫 번째 줄에 개의 정수를 공백으로 구분하여 출력하라. 이 중 번째 정수는, 정점 에서 정점 로 가는 최단 경로 쌍이 존재하면 , 아니면 이다.
힌트
정점 에서 정점 로의 최단 경로란 정점 에서 정점 로 가는 경로 중 가중치의 합이 가장 작은 경로를 의미한다.