#P3556. [POI 2013] MOR-Tales of seafaring

[POI 2013] MOR-Tales of seafaring

Description

年轻的你喜欢在港口酒馆闲逛,经常听海员们讲述他们的航海故事。

起初,你对所有故事都深信不疑,无论听起来多么不可思议。

但随着时间的推移,你开始产生怀疑。

你决定编写一个程序来验证这些夸张的故事是否可能有一丝真实性。

你认为,虽然你无法判断水手们是否真的经历过那些风暴,但至少可以检查他们的航行路线是否合理。

这不是你能完成的任务,因为你不是程序员,但你还是要完成!

在你所听说的海域中,有 nn 个港口和 mm 条连接它们的水道。

如果两个港口之间有水道,则可以双向航行。

你收集了 kk 个航海故事。每个故事讲述了一名水手从某个港口出发,经过若干水道航行后,到达另一个港口(可能与出发港相同)。水手可能多次航行通过同一水道,每次方向不限。

Input Format

第一行三个整数 n,m,k2n50001m50001k1000000n,m,k(2≤n≤5000,1≤m≤5000,1≤k≤1000000),分别表示港口数量、水道数量和故事数量。

接下来 mm 行描述水道,每行两个整数 a,b1a,bnaba,b(1≤a,b≤n,a≠b),表示水道连接的两个港口。

接下来 kk 行描述故事,每行三个整数 s,t,d1s,tn1d1000000000s,t,d(1≤s,t≤n,1≤d≤1000000000),表示水手从港口 ss 出发,经过 dd 次航行后到达港口 tt

Output Format

输出 kk 行,对每个故事,如果可能则输出 TAK(波兰语的"是"),否则输出 NIE(波兰语的"否")。

8 7 4
1 2
2 3
3 4
5 6
6 7
7 8
8 5
2 3 1
1 4 1
5 5 8
1 8 10

TAK
NIE
TAK
NIE