BZOJ-1491-社交网络
题目链接:https://vjudge.net/problem/HYSBZ-1491
题目大意:中文题目,题意见题目
题目分析:由于数据量很小,可以考虑进行Floyd算法。
第一次进行Floyd算法,算出两点之间的最短路径,另外记录下这两点之间有多长条最短路走法。
第二场进行类似Floyd算法的方法,计算经过k点,是否可以走出最短路,如果可以的话,进行计算。
注意在两次统计计算的过程中,要用组合的方法,即num[i][j]=num[i][k]*num[k][j];
给出代码:
#include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
#include <string>
using namespace std;
int n,m;
+][+];
+][+];
int inf=0x3f3f3f;
];
int main()
{
cin>>n>>m;
memset(node,inf,sizeof(node));
//memset(node1,0,sizeof(node1));
// memset(mark,0,sizeof(mark));
; i<m; i++)
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
node[a][b]=c;
node[b][a]=c;
node1[a][b]=;
node1[b][a]=;
}
// for(int i=1; i<=n; i++)
// node[i][i]=0;
/* for(int i=1; i<=n; i++)
{
for(int j=1; j<=n; j++)
{
cout<<node[i][j]<<" ";
}
cout<<endl;
}
cout<<endl;*/
; k<=n; k++)
{
; i<=n; i++)
{
; j<=n; j++)
{
if(k!=i&&k!=j&&i!=j)
{
if(node[i][j]==node[i][k]+node[k][j])
node1[i][j]=node1[i][j]+(node1[i][k]*node1[k][j]);
else if(node[i][j]>node[i][k]+node[k][j])
{
node1[i][j]=node1[i][k]*node1[k][j];
node[i][j]=node[i][k]+node[k][j];
}
}
// node[i][j]=
}
}
}
/* for(int i=1; i<=n; i++)
{
for(int j=1; j<=n; j++)
{
cout<<node[i][j]<<" ";
}
cout<<endl;
}*/
; k<=n; k++)
{
; i<=n; i++)
{
; j<=n; j++)
{
)
{
mark[k]+=((node1[i][k]*node1[k][j])/node1[i][j]);
// cout<<mark[k]<<" "<<k<<" "<<i<<" "<<j<<endl;
// cout<<node1[i][k]<<" "<<node1[k][j]<<endl;
}
}
}
}
; i<=n; i++)
printf("%.3f\n",mark[i]);
;
}
BZOJ-1491-社交网络的更多相关文章
- BZOJ 1491 社交网络 Floyd 最短路的数目
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1491 题目大意: 见链接 思路: 直接用floyd算法求最短路,同时更新最短路的数目即 ...
- BZOJ 1491 社交网络(最短路)
对于这道题,如果我们能求出s到t的最短路径数目和s由v到t的最短路径数目,剩下的很好求了. 令dis[i][j]表示i到j的最短路径,dp[i][j]表示i到j的最短路径条数,如果dis[s][v]+ ...
- BZOJ 1491 [NOI2007]社交网络
1491: [NOI2007]社交网络 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 1159 Solved: 660[Submit][Status] ...
- BZOJ 1491: [NOI2007]社交网络( floyd )
floyd...求最短路时顺便求出路径数. 时间复杂度O(N^3) ------------------------------------------------------------------ ...
- 【BZOJ 1491】 [NOI2007]社交网络
Description Input Output 输出文件包括n 行,每行一个实数,精确到小数点后3 位.第i 行的实数表 示结点i 在社交网络中的重要程度. Sample Input 4 4 1 2 ...
- BZOJ 1491: [NOI2007]社交网络(Floyd+暴力乱搞)
题面: https://www.lydsy.com/JudgeOnline/problem.php?id=1491 题解: 先看数据范围,n<=100..欸可以乱搞了 首先因为小学学过的乘法原理 ...
- bzoj 1491 floyd
我们用w[i][j]表示i到j的最短路的数量,dis[i][j]表示i到j的最短路,那么我们在floyd的时候,如果dis[i][k]+dis[k][j]==dis[i][j],根据乘法原理我们就w[ ...
- bzoj 1491
思路:先求出每两点之间的最短路,建出n个最短路径图,然后枚举起点终点和中间点,计算条数用到拓扑图dp... 看别人的方法很巧妙地用floyd在计算最短路的时候就可以直接计算条数啦... #includ ...
- BZOJ1491: [NOI2007]社交网络
传送门 最短路计数问题.因为数据量非常小($N \leq 100$),所以Floyd随便搞搞就行了. $f[i][j]$表示路径长度,$g[i][j]$表示最短路方案数. 先跑一遍裸的Floyd,然后 ...
- 【BZOJ】1491: [NOI2007]社交网络(floyd)
http://www.lydsy.com/JudgeOnline/problem.php?id=1491 囧囧囧...................... 囧1:虽然自己想到做法了,但是操作的时候, ...
随机推荐
- 奇妙的 CSS shapes(CSS图形)
CSS 发展到今天已经越来越强大了.其语法的日新月异,让很多以前完成不了的事情,现在可以非常轻松的做到.今天就向大家介绍几个比较新的强大的 CSS 功能: clip-path shape-outsid ...
- React+Redux开发实战项目【美团App】,没你想的那么难
README.md 前言 开始学习React的时候,在网上找了一些文章,读了官网的一些文档,后来觉得React上手还是蛮简单的, 然后就在网上找了一个React实战的练手项目,个人学完之后觉得这个项目 ...
- 织梦dedecms单标签、双标签
标签是dedecms的核心,dedecms的标签也跟html标签一样,同样分单标签和双标签. 我不会讲单标签有那些,双标签有那些,也不会叫大家去背那些是单标签,那些是双标签.如果去背这些标签,这样学起 ...
- springMVC 配置和使用
springMVC相对于Struts2学习难度较为简单,并且更加灵活轻便. 第一步:导入jar包 spring.jar.spring-webmvc.jar.commons-logging.jar.sp ...
- PHP中常量和变量的区别
1.常量只能赋一次值: 以下是申请常量的两种方法: const THE_VALUE="one"; define("THE_VALUE","one&qu ...
- WCF学习——构建一个简单的WCF应用(二)
我们接着上一篇文章进行讲解 http://www.cnblogs.com/songjianhui/p/7060698.html 一:客户端通过添加引用调用服务 WCF应用服务被成功寄宿后,WCF服务应 ...
- [leetcode-312-Burst Balloons]
Given n balloons, indexed from 0 to n-1. Each balloon is painted with a number on it represented by ...
- 自己开源的leaf-snowflake
拜读了美团点评技术团队博客的"Leaf--美团点评分布式ID生成系统(http://tech.meituan.com/MT_Leaf.html)"之后,收获很多.纸上得来终觉浅 绝 ...
- Akka(11): 分布式运算:集群-均衡负载
在上篇讨论里我们主要介绍了Akka-Cluster的基本原理.同时我们也确认了几个使用Akka-Cluster的重点:首先,Akka-Cluster集群构建与Actor编程没有直接的关联.集群构建是A ...
- python编程快速上手之第3章实践项目参考答案
1 #!/usr/bin/env python 2 # coding:utf-8 3 # write by mfyang 4 # collatz.py 5 # 从用户读入一个值,并判断这个值是不是一个 ...