题意分析

看了一眼题意,发现FLOYD可以做,其实就是判断是否满足边相加的关系成立。
需要注意的是,有可能有这样的数据,
3 2
1 2 10
3 3 -15
这个也是true的,也就是说,当边不满足判断条件的时候,可以认为补充上一些边。
或者说,只有发现两边相加不等于第三边的时候,才算false。
这道题也可以用带权并查集来做。
一看数据范围才100当然用Floyd来做啦!

代码总览

#include<bits/stdc++.h>
using namespace std;
const int nmax = 105;
const int INF = 0x3f3f3f3f;
int w[nmax][nmax];
int t,n,m;
bool floyd(){for(int k = 0;k<=n;++k){for(int i = 0;i<=n;++i){for(int j = 0;j<=n;++j){if(w[i][k] != INF && w[k][j] != INF && w[i][j] != INF){if(w[i][j] != w[i][k] + w[k][j]) return false;}else if(w[i][k] != INF && w[k][j] != INF){w[i][j] = w[i][k] + w[k][j];}else if(w[i][k] != INF && w[i][j] != INF){w[k][j] = w[i][j] - w[i][k];}else if(w[k][j] != INF && w[i][j] != INF){w[i][k] = w[i][j] - w[k][j];}}}}return true;
}
int main(){scanf("%d",&t);while(t--){memset(w,INF,sizeof w);scanf("%d %d",&n,&m);int u,v,ww;for(int i = 0;i<m;++i){scanf("%d %d %d",&u,&v,&ww);w[u-1][v] = ww;}printf("%s\n",floyd()?"true":"false");}return 0;
}

BZOJ1202 狡猾的商人 (Floyd)相关推荐

  1. bzoj1202 狡猾的商人[并查集]

    1202: [HNOI2005]狡猾的商人 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2932 Solved: 1382 [Submit][Sta ...

  2. bzoj1202[HNOI2005]狡猾的商人

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

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

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

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

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

  5. P2294 [HNOI2005]狡猾的商人

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

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

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

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

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

  8. [HNOI2005]狡猾的商人

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

  9. HNOI2005 狡猾的商人

    目录 前言 关于建图 关于建图的基本规律 关于跑图 如何判定是否有解 是跑最长路还是最短路 前言 差分约束:通过建图来判断一组(或多组)式子是否可以同时成立尽管在NOIP中并不是经常考到,但我觉得它建 ...

最新文章

  1. Windows下curl使用
  2. php中 一行上显示多个数字,php – 打印图案以显示最多5行和5列的数字,如5 4 3 2 1和下一行4 3 2 1 5到第5行...
  3. CCSpriteBatchNode的使用
  4. x1c 2017 安装mint18的坑——grub2
  5. 微博上的网红,为什么更能红得发紫?
  6. c++ 用eclipse建立一个类,并实例化并运行
  7. linux限制单个ip频繁连接,限制单个IP并发TCP连接的方法
  8. youtube python 中文_GitHub - dousirui001/youtube-streaming-translator-python: 实时翻译油管直播,开发中...
  9. java出现令牌语法错误_java – 令牌上的语法错误
  10. 删除右键新建多余菜单
  11. JAVA 小易爱回文
  12. 一行代码能实现什么丧心病狂的功能?
  13. php guzzle,php – 如何使用Guzzle 6记录所有API调用
  14. SQLite Expert 5.X 通用注册版-你的SQL好帮手
  15. 命令行检查win10自动唤醒原因
  16. 3万多条对联春联门联ACCESS数据库
  17. 闲鹿工作流 activiti6.0 显示已结束的流程图
  18. 台达(Delta)PLC的PLC-LINK实现
  19. ogc是一个非营利性组织_非营利组织的21个最佳WordPress主题
  20. 星辰变中第四个鸿蒙,我吃西红柿构造的鸿蒙金榜上,为何第四位鸿蒙掌控者迟迟不出来?...

热门文章

  1. 搭建dashboard
  2. 采集工商信息的10个经典方法
  3. NMEA1803协议3.0版本及以上说明
  4. java 线程池控制多线程_Java多线程开发系列之四:玩转多线程(线程的控制1)...
  5. 如何脱壳:PECompact 1.68 - 1.84 - Jeremy Collake [Overlay]
  6. FPGA课程设计——数字电子时钟VERILOG(基于正点原子新起点开发板,支持8位或6位共阳极数码管显示时分秒毫秒,可校时,可设闹钟,闹钟开关,led指示)
  7. TOJ 2346.Gauß in Elementary School
  8. 分享5个黑科技APP,都是优秀好资源,手机里没有的可惜了
  9. java 多态的应用——多态数组和多态参数详解
  10. 第十届蓝桥杯C/C++ B组决赛