2679 - MOR-Tales of seafaring
年轻的拜腾森喜欢泡在海港酒馆里,常听老水手们讲述航海奇谈。起初无论故事多么离奇,他都照单全收。但随着时间推移,他渐渐起了疑心。
他决定编写一个程序来验证这些夸张故事是否可能存在一丝真实性。拜腾森认为,虽然无法判断水手们是否真的经历过那些惊涛骇浪,但至少可以核实他们的航行路线是否合理。可惜编程并非拜腾森所长,这任务需要程序员出手相助!
在拜腾森听闻的水手们经常活动的海域,分布着n个港口,由m条双向航道相互连接。任意两个港口间若有航道,即可通航。每条航道都允许双向航行。
拜腾森共收集了k个航海故事。每个故事都描述了一名水手从某个港口启航,经过若干航道航行后,抵达另一个港口(也可能是启航的原始港口)。值得注意的是,水手在航行过程中可以重复通过同一条航道,且每次通行方向不限。
输入
标准输入的第一行包含三个整数 n、m 和 k(2 \le n \le 5,000,1 \le m \le 5,000,1 \le k \le 1,000,000),分别表示:水手们常去海域的港口数量、航道数量,以及拜腾森听到的航海故事数量。
接下来的 m 行描述航道信息。每条航道的描述占一行,包含两个用空格分隔的整数 a 和 b(1 \le a, b \le n,a \ne b),表示该航道连接的两个港口编号。
随后的 k 行描述拜腾森听到的航海故事。每个故事的描述占一行,包含三个用空格分隔的整数 s、t 和 d(1 \le s, t \le n,1 \le d \le 1,000,000,000),表示故事的主角从 s 号港口出发,最终抵达 t 号港口,并且在航行过程中恰好航行了 d 次航道。
输出
你的程序应该向标准输出 恰好输出 k 行,其中第 i 行对应第 i 个航海故事的验证结果:
如果该航行路线 可能存在(即符合逻辑),则输出 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
来源
POI