Description

刁姹接到一个任务,为税务部门调查一位商人的账本,看看账本是不是伪造的。账本上记录了n个月以来的收入情况,其中第i 个月的收入额为Ai(i=1,2,3...n-1,n), 。当 Ai大于0时表示这个月盈利Ai 元,当 Ai小于0时表示这个月亏损Ai 元。所谓一段时间内的总收入,就是这段时间内每个月的收入额的总和。 刁姹的任务是秘密进行的,为了调查商人的账本,她只好跑到商人那里打工。她趁商人不在时去偷看账本,可是她无法将账本偷出来,每次偷看账本时她都只能看某段时间内账本上记录的收入情况,并且她只能记住这段时间内的总收入。 现在,刁姹总共偷看了m次账本,当然也就记住了m段时间内的总收入,你的任务是根据记住的这些信息来判断账本是不是假的。

Input

第一行为一个正整数w,其中w < 100,表示有w组数据,即w个账本,需要你判断。每组数据的第一行为两个正整数n和m,其中n < 100,m < 1000,分别表示对应的账本记录了多少个月的收入情况以及偷看了多少次账本。接下来的m行表示刁姹偷看m次账本后记住的m条信息,每条信息占一行,有三个整数s,t和v,表示从第s个月到第t个月(包含第t个月)的总收入为v,这里假设s总是小于等于t。

Output

包含w行,每行是true或false,其中第i行为true当且仅当第i组数据,即第i个账本不是假的;第i行为false当且仅当第i组数据,即第i个账本是假的。

Sample Input

2
3 3
1 2 10
1 3 -5
3 3 -15
5 3
1 5 100
3 5 50
1 2 51

Sample Output

true
false
#include<cstdio>
#include<iostream>
using namespace std;
int n,m,x,y,z,u,v,cas;
int f[105],dis[105];
int a[1005],b[1005],c[1005];
int get(int x)
{if(f[x]==x) return x;int t=f[x];f[x]=get(f[x]);dis[x]=dis[x]+dis[t];return f[x];
}
int main()
{cin>>cas;while(cas--) {cin>>n>>m;for(int i=0;i<=n;i++) {f[i]=i;dis[i]=0;}int ok=0;for(int i=1;i<=m;i++) scanf("%d%d%d",&a[i],&b[i],&c[i]);for(int i=1;i<=m;i++) {x=a[i],y=b[i],z=c[i];x--;u=get(x);v=get(y);if(u==v) {if(dis[y]-dis[x]!=z) {ok=1;cout<<"false"<<endl;break;}}else{f[v]=u;dis[v]=dis[x]-dis[y]+z;}}if(ok==0) cout<<"true"<<endl;}return 0;
}

bzoj 1202 [HNOI2005]狡猾的商人相关推荐

  1. bzoj 1202: [HNOI2005]狡猾的商人(带权并查集)

    1202: [HNOI2005]狡猾的商人 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3616  Solved: 1740 [Submit][S ...

  2. BZOJ——1202: [HNOI2005]狡猾的商人

    http://www.lydsy.com/JudgeOnline/problem.php?id=1202 Time Limit: 10 Sec  Memory Limit: 162 MB Submit ...

  3. 1202: [HNOI2005]狡猾的商人

    1202: [HNOI2005]狡猾的商人 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1554  Solved: 745 [Submit][St ...

  4. BZOJ1202 [HNOI2005]狡猾的商人 【并查集】

    1202: [HNOI2005]狡猾的商人 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 4180  Solved: 2015 [Submit][S ...

  5. bzoj1202[HNOI2005]狡猾的商人

    bzoj1202[HNOI2005]狡猾的商人 题意: 账本上记录了n个月以来的收入情况,其中第i 个月的收入额为Ai .所谓一段时间内的总收入,就是这段时间内每个月的收入额的总和.给出m段时间内的总 ...

  6. P2294 [HNOI2005]狡猾的商人

    P2294 [HNOI2005]狡猾的商人 题意: 你需要调查某个商人的账本,给你n个月内,m条账单信息,每条账单信息为x到y月的收入或者支出多少钱,问你根据账单信息判断这个账本是否合理 5 3 1 ...

  7. 洛谷 P2294 [HNOI2005]狡猾的商人

    洛谷 P2294 [HNOI2005]狡猾的商人 题目: 有图·.转链接 题解: 差分约束. 虽然题目中没有出现不等式,但还是属于差分约束的范畴之内的. 一开始我就按照它的要求u到v加权值w的边.但发 ...

  8. [HNOI2005]狡猾的商人

    [HNOI2005]狡猾的商人 Time Limit: 10 Sec Memory Limit: 162 MB Description 刁姹接到一个任务,为税务部门调查一位商人的账本,看看账本是不是伪 ...

  9. [HNOI2005]狡猾的商人(差分约束)

    P2294 [HNOI2005]狡猾的商人 (来自Luogu) 题目概述 数据规模: w,n,m <= 100 思路: 这个题的难点在于不好想到差分,转化:a-b=k是a-b>=k& ...

最新文章

  1. php.ini Xdebug配置
  2. ad用户和计算机报错,AD常用排错工具
  3. nlp算法文本向量化_NLP中的标记化算法概述
  4. 常见的无线传感器数据采集传输系统的三种组网
  5. (八)企业部分之nginx+tomcat+memcached负载均衡集群搭建
  6. 在sql中将表建在别的构件中用什么语句_SQL实战
  7. forth day ---内置函数、匿名函数
  8. 3D数学——Unity中的向量运算
  9. cs1.6正版僵尸服务器ip,cs1.6僵尸服务器
  10. Hbase、elasticsearch整合中jar包冲突
  11. php 对账单系统,PHP实现微信对账单处理
  12. 数据挖掘-朴素贝叶斯算法的R实现
  13. 括号配对检测python123_《括》字意思读音、组词解释及笔画数 - 新华字典 - 911查询...
  14. vue后台管理知识点、难点总结01
  15. “时间就是金钱”的价值观
  16. 基于网页自动化Selenium IDE的安装与部署 图书馆选座、网站防休眠、自动点击等
  17. java转换时间格式 yyyy-MM-dd转成yyyy年MM月dd日
  18. 深入简出 SQL窗口函数
  19. 什么是证书吊销列表(CRL)? 吊销列表起什么作用 ?
  20. python manage.py migrate和 migrate --fake和migrate --fake-initial的区别

热门文章

  1. ElasticSearch (ES)学习之路(二)Win10安装ES,可视化界面,Kibanna
  2. python 可以用excel做词云图嘛_今天从零教你开始利用Python打造词云图!
  3. 实验三 迷宫游戏开发
  4. dcdc降压电路基本原理及设计实例
  5. java基础入门第二版二手,细节爆炸
  6. Web渗透 不断更新
  7. 基于ARM Cortex-A8和Android 4.x的联动报警系统 (Android 、A8、Linux、驱动、NDK)
  8. inherit和initial:两个特殊的css值
  9. ORACLE 错误 1659,数据库导入dmp临时表空间内存不够
  10. 读书笔记15:VAIN:Attentional Multi-agent Predictive Modeling