传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4602

【题解】

对于每组齿轮(u, v)连边,权值为y/x(反向边x/y)

那么直接dfs计算一遍即可。

# include <math.h>
# include <stdio.h>
# include <string.h>
# include <algorithm>
// # include <bits/stdc++.h> using namespace std; typedef long long ll;
typedef long double ld;
typedef unsigned long long ull;
const int M = 5e5 + ;
const int mod = 1e9+; # define RG register
# define ST static int T, n, m;
int head[M], nxt[M], to[M], tot;
ld w[M];
inline void add(int u, int v, ld _w) {
++tot; nxt[tot] = head[u];
head[u] = tot; to[tot] = v; w[tot] = _w;
} bool vis[M];
ld v[M]; inline bool dfs(int x, ld c) {
v[x] = c; vis[x] = ;
for (int i=head[x]; i; i=nxt[i]) {
if(!vis[to[i]]) {
if(dfs(to[i], c*w[i])) return ;
} else {
if(fabs(v[to[i]]-c*w[i]) > 1e-) return ;
}
}
return ;
}
inline void sol() {
memset(head, , sizeof head);
tot = ;
scanf("%d%d", &n, &m);
for (int i=; i<=m; ++i) {
int u, v, x, y; scanf("%d%d%d%d", &u, &v, &x, &y);
add(u, v, (ld)y/x);
add(v, u, (ld)x/y);
}
memset(vis, , sizeof vis);
for (int i=; i<=n; ++i) {
if(vis[i]) continue;
if(dfs(i, )) {
puts("No");
return;
}
}
puts("Yes");
} int main() {
int T; scanf("%d", &T);
for (int i=; i<=T; ++i) {
printf("Case #%d: ", i);
sol();
}
return ;
}

最新文章

  1. python27(32位)安装RTree
  2. 一道题看bitset应用 --ZOJ 3642
  3. javac编译提示编码GBK的不可映射字符
  4. sass中出现的中文问题
  5. EXCEL,熟悉又不熟悉的项目管理工具
  6. Eclipse maven git
  7. -fembed-bitcode is not supported on versions of iOS prior to 6.0
  8. JAVA的节点流和处理流
  9. MySQL的存储引擎与日志说明
  10. 【BZOJ1084】最大子矩阵(动态规划)
  11. ACM-自学之旅
  12. history.pushState()和history.replaceState()
  13. day43 mysql 基本管理,[破解密码以及用户权限设置]以及慢日志查询配置
  14. MES方向准备
  15. Maven多模块项目
  16. SET FMTONLY ON
  17. 003_cd pushd popd三个命令的区别
  18. MVVM模式下关闭窗口的实现
  19. 网络攻防大作业——用python实现wifi破解
  20. angular controller 之间的通信方式

热门文章

  1. 面试官常问的10个Linux问题
  2. 安装mathtype出问题卸载后 office2016打开mathtype弹错误窗口
  3. ES5新增数组方法(4):every
  4. [HNOI2004]打鼹鼠
  5. mysql初始(6)
  6. 【WebService】——契约优先
  7. ps aux 和ps -aux和 ps -ef的选择
  8. mysql 数据包太小会引发错误信息
  9. [剑指Offer] 7.斐波那契数列
  10. 基于oracle的sql(结构化查询语言)指令