#P1097. 公司打卡

公司打卡

Description

G公司是一个著名的互联网公司。与其他996公司不同,G公司的考勤制度要灵活得多,它并不规定员工固定的上班时间和下班时间,而是规定员工每个月的上班总小时数达到工作日数乘以8。换言之,若本月共有20个工作日,则要求员工本月至少达到20*8=160小时的总上班时长,才视为全勤。也就是说,员工可以自由分配每天的工作时长,只需要保证总时长达标即可,甚至于在某些天不上班也是允许的。

G公司在办公室门口设置一个打卡机,员工可以随时去打卡。每天员工可能会有多次打卡记录,公司只会用到该天最早的打卡时间和最晚的打卡时间,其余中间的记录都视作无效。公司会将每天最晚打卡时间与最早打卡时间的差,作为该员工当前的工作时长。比如说,今天某个员工在7时、8时、14时、15时都打了卡,那么公司算作他今天工作了15-7=8小时。如果某个员工在今天只打了一次卡,则公司算作他今天没有工作。

现在G公司找到了你,帮助他们写一个计算工作时长的代码,告诉你本月的工作日天数以及某个员工的若干次打卡记录,你需要判断出该员工本月是否达到全勤。

Input Format

第一行包含一个整数T(1≤T≤10),表示有T组测试数据。

接下来对于每组数据,

第一行包含两个整数D(1≤D≤31)和N(1≤N≤200),表示本月共有D个工作日,小A有N次打卡记录。

第二到N+1行,每行包含两个整数d,h,表示在第d天h时有一次打卡记录。

数据不保证打卡记录是按照时间顺序给出。

Output Format

若本月达到全勤,则输出Yes,否则输出No。

1
3 6
1 7
1 12
1 14
2 14
3 0
3 17

Yes

Hint

对于100%的数据,1≤N≤200,输入保证所有的d满足1≤d≤D。