csu 1978: LXX的图论题
1978: LXX的图论题
Submit Page Summary Time Limit: 1 Sec Memory Limit: 128 Mb Submitted: 71 Solved: 27
Description
由于lxx的图论和数据结构太弱了,大佬Z决定为lxx补一补。于是大佬Z为lxx出了一道题目,题目如下:给出一张有向图,图中有n个点,m条边,每条边上都有一个权值w,问图中是否存在满足以下条件的点i,j,...p使得不等式w[i][j] * w[j][k] * .... * w[p][i]<1成立。奈何lxx太弱了,他决定寻求你的帮助。
Input
多组输入,以文件结尾。第一行两个整数n( 1<=n<=500 ),m( 1<=m<=n*(n-1)/2 ),接下来m行,每行3个数x,y,z,(x≠y):表示x到y有一条边,权值为z(0<z<20,且保证z小数点后面最多只有一位)。
Output
如果存在满足题目所描述的式子,输出“YES”,否则输出“NO”。
Sample Input
- 2 2
- 1 2 0.9
- 2 1 1.2
- 6 4
- 1 2 0.1
- 2 4 0.8
- 4 1 12
- 4 1 15
Sample Output
- NO
- YES
Hint
点的编号为1~n
Source
2017年8月月赛
Author
廖璇璇
题解:
直接floyd一次
- #include <iostream>
- #include <cstdio>
- #include <cmath>
- #include <cstring>
- #include <algorithm>
- #define INF 0x4f4f4f
- using namespace std;
- double mp[][];
- double dist[][];
- int n,m;
- double floyd()
- {
- int i,j,k;
- double minn=999999.0;
- for(k=; k<=n; k++)
- {
- for(i=; i<=n; i++)
- for(j=; j<=n; j++)
- {
- if(dist[i][j]>dist[i][k]*dist[k][j])
- {
- dist[i][j]=dist[i][k]*dist[k][j];
- }
- }
- }
- for(i=; i<=n; i++)
- minn=min(minn,dist[i][i]);
- return minn;
- }
- int main()
- {
- int s,t;
- double v;
- while(~scanf("%d%d",&n,&m))
- {
- memset(mp,,sizeof(mp));
- for(int i=; i<=n; i++)
- for(int j=; j<=n; j++)
- dist[i][j]=INF;
- for(int i=; i<m; i++)
- {
- scanf("%d %d %lf",&s,&t,&v);
- mp[s][t]=min(mp[s][t],v);
- dist[s][t]=min(dist[s][t],v);
- }
- // printf("%lf\n",dist[1][4]);
- if(floyd()<)
- printf("YES\n");
- else printf("NO\n");
- }
- return ;
- }
csu 1978: LXX的图论题的更多相关文章
- cojs QAQ的图论题 题解报告
话说这个题目应该叫做 斯特林数的逆袭 QAQ 先说一说部分分的算法 1.n<=5 直接暴力搜索就可以了 2.k=0的时候不难发现任意一张图的价值都是n,问题转化为计算有多少种图,显然是2^C(n ...
- 【XSY2887】【GDOI2018】小学生图论题 分治FFT 多项式exp
题目描述 在一个 \(n\) 个点的有向图中,编号从 \(1\) 到 \(n\),任意两个点之间都有且仅有一条有向边.现在已知一些单向的简单路径(路径上任意两点各不相同),例如 \(2\to 4\to ...
- 【HDOJ图论题集】【转】
=============================以下是最小生成树+并查集====================================== [HDU] How Many Table ...
- HDU 6343 - Problem L. Graph Theory Homework - [(伪装成图论题的)简单数学题]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6343 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...
- 图论常用算法之一 POJ图论题集【转载】
POJ图论分类[转] 一个很不错的图论分类,非常感谢原版的作者!!!在这里分享给大家,爱好图论的ACMer不寂寞了... (很抱歉没有找到此题集整理的原创作者,感谢知情的朋友给个原创链接) POJ:h ...
- HDU图论题单
=============================以下是最小生成树+并查集====================================== [HDU] 1213 How Many ...
- csu 1984: LXX的能力值
1984: LXX的能力值 Submit Page Summary Time Limit: 3 Sec Memory Limit: 128 Mb Submitted: 17 ...
- BZOJ2118: 墨墨的等式(同余类BFS)(数学转为图论题)
2118: 墨墨的等式 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 2944 Solved: 1206[Submit][Status][Discu ...
- GDOI2018 小学生图论题 [NTT]
并没有传送门qwq 思路 首先要知道一个结论(或者说是一个套路):一个竞赛图缩点之后必定是一条链. 那么强联通分量的个数,就是这条链的边数+1. 考虑一条边什么时候会出现:当且仅当点集可以被分成\(S ...
随机推荐
- ent 基本使用十六 聚合
ent 提供了聚合处理 一个group by + 聚合的处理(age以及name字段) package main import ( "context" "< ...
- charles安装及使用
一.下载安装charles 1.官方网址:https://www.charlesproxy.com/ 选择自己需要的macos/windows/linux下对应的最新版本安装即可 我的是mac,下载版 ...
- navicat提示无法连接解决办法
1.错误如下图: 2.这个是由于mysql中user表中未设置允许该ip访问导致,解决办法: 1)查下user表:select user,host from user; 这张表就是mysql.user ...
- shell 求数组的平均值,求和,最大值,最小值
test.sh #!/bin/bash arr=( ) let min=${arr[]} let max=${min} sum= ;i<${#arr[*]};i++)) do [[ ${min} ...
- hotspot的内存
java memory主要分heap memory 和 non-heap memory,其计算公式如下: Max memory = [-Xmx] + [-XX:MaxPermSize] + numbe ...
- Vue/小程序/小程序云+Node+Mongo开发微信授权、支付和分享
大家好,我是河畔一角,今天给大家介绍我的第三门实战课程:基于微信开发的H5.小程序和小程序云的授权.支付和分享专项课程. 一.这一次为什么会选择微信支付和分享的课题呢? 金庸的小说中曾提到:有人的地方 ...
- vs2010怎么更改调试时使用的浏览器
在当前网站的起始网页上右击,在右击菜单中选择 浏览方式 步骤阅读 2
- Video标签动态修改src地址播放问题
不管在React或Vue中,将一个变量赋值给src属性,当修改这个变量的值时,video播放的还是原来的视频. Vue中 <video id="root"> <s ...
- 【转】Linux下的CPU使用率与服务器负载的关系与区别
当我们使用top命令查看系统的资源使用情况时会看到load average,如下图所示,它表示系统在1,5,15分钟的平均工作负载. 那么什么是负载(load)呢?它和CPU的利用率又有什么关系呢? ...
- Django实现自动发布(1数据模型)
公司成立之初,业务量较小,一个程序包揽了所有的业务逻辑,此时服务器数量少,上线简单,基本开发-测试-上线都是由开发人员完成. 随着业务量逐渐上升,功能增多,代码量增大,而单一功能上线需要重新编译整个程 ...