最新消息:380元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

信息学奥赛题库- 小K的农场

C++ 少儿编程 1194浏览 0评论

友情提示:380元/半年,儿童学编程,就上码丁实验室

【题目描述】

小K建立了$n$个农场,他忘记了每个农场中种植作物的具体数量,只记得一些含糊的信息(共$m$个),以下列三种形式描述:

①农场$a$比农场$b$至少多种植了$c$个单位的作物;

②农场$a$比农场$b$至多多种植了$c$个单位的作物;

③农场$a$与农场$b$种植的作物数一样多。

但是,由于小K的记忆有些偏差,所以他想要知道存不存在一种情况,使得农场的种植作物数量与他记忆中的所有信息吻合。

【输入】

第一行包括两个整数 $n$ 和 $m$,分别表示农场数目和小 K 记忆中的信息数目。

接下来 $m$ 行:

如果每行的第一个数是 $1$,接下来有 $3$ 个整数 $a,b,c$,表示农场 $a$ 比农场 $b$ 至少多种植了$c$个单位的作物。

如果每行的第一个数是$2$,接下来有$3$个整数$a,b,c$,表示农场$a$比农场$b$至多多种植了$c$个单位的作物。如果每行的第一个数是$3$,接下来有$2$个整数$a,b$,表示农场$a$种植的的数量和农场$b$一样多。

【输出】

如果存在某种情况与小 K 的记忆吻合,输出“$Yes$”,否则输出“$No$”。

【输入样例】

3 3
3 1 2
1 1 3 1
2 2 3 2

【输出样例】

Yes

【提示】

【数据规模】

对于 100% 的数据保证:$1 ≤ n,m,a,b,c ≤ 10000$。

您必须 登录 才能发表评论!