2258:数组-1

时间限制:2 S   /  内存限制:65536 KB
AC:7   /  Submit:12
问题描述

为了出题,著名波普艺术家在大脑中随机生成了一个长度为 n 的数组,但由于他记忆力较差,只能记个大概。他只能告诉你 m 条信息,你需要帮他判断这个数组是否真的可能存在。

信息分为三种:

 1. A[b] ≤ A[a] + C

 2. A[a] ≤ A[b] + C

 3. A[a] = A[b]

(C 为小于等于 100 的非负整数)

输入描述

输入两个整数 n 和 m,分别为数组长度和信息的条数。(1 ≤ n,m ≤ 1e4)

接下来是 m 行。

如果第一个数字为 1,接下来三个数字 a , b , C,表示 A[b] ≤ A[a] + C。(1 ≤ C ≤ 100)

如果第一个数字为 2,接下来三个数字 a , b , C,表示 A[a] ≤ A[b] + C。(1 ≤ C ≤ 100)

如果第一个数字为 3,接下来两个数字 a , b,表示 A[a] = A[b]。

(1 ≤ a,b ≤ n)

输出描述

若数组可能存在输出 Yes,若数组不可能存在输出 No,并换行!

样例输入复制样例
3 3
3 1 2
1 1 3 1
2 2 3 2
样例输出
Yes
提示说明
SPFA
相关

第七届编程大赛-热身赛


Copyright 2016 - 2024 XUJC ACM Team
闽ICP备2020022076号-1