

Time Limit: 5 sec / Memory Limit: 256 MB
配点 : 点
問題文
頂点 辺の単純な有向グラフが与えられます。 頂点には の番号が,辺には の番号が付いています。 辺 は頂点 から頂点 へ伸びています。
それぞれの辺について,もしその辺を反転させたらグラフの強連結成分の個数が変わるかどうかを求めてください。
なお,辺 を反転させるとは,グラフから辺 を削除し, 新たに頂点 から頂点 へ伸びる辺を追加する操作を意味します。
制約
- ならば または
入力
入力は以下の形式で標準入力から与えられる。
出力
行出力せよ。 行目には,辺 を反転させたらグラフの強連結成分の個数が変わる場合 diff
,変わらない場合 same
と出力せよ。
入力例 1Copy
3 3 1 2 1 3 2 3
出力例 1Copy
same diff same
辺を反転させない場合強連結成分の個数は 個ですが,辺 を反転させると強連結成分の個数は 個になります。
入力例 2Copy
2 2 1 2 2 1
出力例 2Copy
diff diff
辺を反転させた結果,グラフに多重辺が生じる場合もあります。
入力例 3Copy
5 9 3 2 3 1 4 1 4 2 3 5 5 3 3 4 1 2 2 5
出力例 3Copy
same same same same same diff diff diff diff
Score : points
Problem Statement
You are given a directed graph with vertices and edges. The vertices are numbered , and the edges are numbered . Edge points from Vertex to Vertex .
For each edge, determine whether the reversion of that edge would change the number of the strongly connected components in the graph.
Here, the reversion of Edge means deleting Edge and then adding a new edge that points from Vertex to Vertex .
Constraints
- If , then or .
Input
Input is given from Standard Input in the following format:
Output
Print lines. In the -th line, if the reversion of Edge would change the number of the strongly connected components in the graph, print diff
; if it would not, print same
.
Sample Input 1Copy
3 3 1 2 1 3 2 3
Sample Output 1Copy
same diff same
The number of the strongly connected components is without reversion of edges, but it will become if Edge is reversed.
Sample Input 2Copy
2 2 1 2 2 1
Sample Output 2Copy
diff diff
Reversion of an edge may result in multiple edges in the graph.
Sample Input 3Copy
5 9 3 2 3 1 4 1 4 2 3 5 5 3 3 4 1 2 2 5
Sample Output 3Copy
same same same same same diff diff diff diff