1491: [NOI2007]社交网络

Time Limit: 10 Sec  Memory Limit: 64 MB
Submit: 881  Solved: 518
[Submit][Status]

Description

Input

Output

输出文件包括n 行,每行一个实数,精确到小数点后3 位。第i 行的实数表 示结点i 在社交网络中的重要程度。

Sample Input

4 4
1 2 1
2 3 1
3 4 1
4 1 1

Sample Output

1.000
1.000
1.000
1.000

HINT


为1

Source

 题解:这个嘛,我还是小小地逗比了一下(phile:汗 HansBug:T_T)——题目中说每次求出来的是s到t最短路径中经过v点的路径所占的比例,但是我还是当作占经过各点路径之和的比例了(phile:那不是重复计算了嘛 HansBug:么么哒)。。。然后说思路——其实这道题的思想有点类似于Bzoj1638(奶牛交通),通过求出各个部分的局部值来进行组合求解——在Floyd过程中,当a[i,j]=a[i,k]+a[k,j]时,则用于存储数量的b[i,j]:=b[i,j]+b[i,k]*b[k,j](简单乘法原理),当a[i,j]>a[i,k]+a[k,j](即最短路径长度被刷新时),则b[i,j]:=b[i,k]*b[k,j];然后这样字O(n^3)(N<=100呢怕啥)处理完,然后再来个O(n^3)负责统计即可。。。(HansBug:记得开int64/long long啊!!!题目中最短路径数是<=10^10,要是longint小心跪掉。。。)
 
 var
i,j,k,l,m,n,s,t:longint;
a,b:array[..,..] of int64;
c:array[..] of int64;
d:array[..] of extended;
begin
readln(n,m);
fillchar(a,sizeof(a),);
fillchar(b,sizeof(b),);
for i:= to n do b[i,i]:=;
for i:= to m do
begin
readln(j,k,l);
a[j,k]:=l;a[k,j]:=l;
b[j,k]:=;b[k,j]:=;
end;
for k:= to n do
for i:= to n do
begin
if (i<>k) and (a[i,k]>) then
begin
for j:= to n do
begin
if (i<>j) and (j<>k) and (a[k,j]>) then
begin
if ((a[k,j]+a[i,k])=a[i,j]) then
begin
b[i,j]:=b[i,j]+(b[i,k]*b[k,j]);
end
else
begin
if ((a[k,j]+a[i,k])<a[i,j]) or (a[i,j]=) then
begin
a[i,j]:=a[k,j]+a[i,k];
b[i,j]:=b[i,k]*b[k,j];
end;
end;
end;
end;
end;
end;
fillchar(d,sizeof(d),);
for s:= to n do
for t:= to n do
begin
if s=t then continue;
fillchar(c,sizeof(c),);
for i:= to n do
begin
if (s=i) or (t=i) then continue;
if (a[s,i]+a[i,t])<>a[s,t] then continue;
d[i]:=d[i]+(b[s,i]*b[i,t])/b[s,t];
end;
end;
for i:= to n do writeln(d[i]::);
end.

1491: [NOI2007]社交网络的更多相关文章

  1. BZOJ 1491 [NOI2007]社交网络

    1491: [NOI2007]社交网络 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1159  Solved: 660[Submit][Status] ...

  2. BZOJ 1491: [NOI2007]社交网络( floyd )

    floyd...求最短路时顺便求出路径数. 时间复杂度O(N^3) ------------------------------------------------------------------ ...

  3. BZOJ1491:1491: [NOI2007]社交网络

    1491: [NOI2007]社交网络 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 2204  Solved: 1175[Submit][Status ...

  4. 【BZOJ】1491: [NOI2007]社交网络(floyd)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1491 囧囧囧...................... 囧1:虽然自己想到做法了,但是操作的时候, ...

  5. 1491: [NOI2007]社交网络 - BZOJ

    Description Input Output输出文件包括n 行,每行一个实数,精确到小数点后3 位.第i 行的实数表 示结点i 在社交网络中的重要程度.Sample Input4 41 2 12 ...

  6. BZOJ 1491: [NOI2007]社交网络(Floyd+暴力乱搞)

    题面: https://www.lydsy.com/JudgeOnline/problem.php?id=1491 题解: 先看数据范围,n<=100..欸可以乱搞了 首先因为小学学过的乘法原理 ...

  7. 1491. [NOI2007]社交网络【最短路计数】

    Description 在社交网络(socialnetwork)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题. 在一个社交圈子里有n个人,人与人之间有不同程度的关系.我们将这 ...

  8. [BZOJ1491][NOI2007]社交网络 floyd

    1491: [NOI2007]社交网络 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 2196  Solved: 1170[Submit][Status ...

  9. 图论(floyd算法):NOI2007 社交网络

    [NOI2007] 社交网络 ★★   输入文件:network1.in   输出文件:network1.out   简单对比 时间限制:1 s   内存限制:128 MB [问题描述] 在社交网络( ...

随机推荐

  1. Linux笔记(六) - 压缩解压命令

    (1)压缩文件( gz):gzip-d 解压只能压缩文件,不保留原文件例:gzip a.txt(2)解压文件( gz):gunzip 例:gunzip a.txt.gz(3)打包目录(tar):tar ...

  2. web前端性能调优(二)

    项目经过第一波优化之后APP端已基本已经符合我们的要求了,但是TV端还是反应比较慢,页面加载和渲染都比较慢了一点,我觉的还是有必要在进行一些优化,经过前面的优化,我们的优化空间已经小了一部分,不过还是 ...

  3. 二分查找 - vb.net

    Module Module1    Sub Main()        Dim array(999) As Integer        Dim searchValue As Integer      ...

  4. printf 格式化输出

    i,d   十进制整数 x,X    十六进制无符号整数 o       八进制无符号整数 u       无符号十进制整数 c       单一字符 s       字符串 e E    指数形式浮 ...

  5. Vmware 的三种网络连接方式

    VMWare提供了三种工作模式,host-only(主机模式).NAT(网络地址转换模式).bridged(桥接模式). 1.host-only(主机模式) 在某些特殊的网络调试环境中,如何要求将真实 ...

  6. arm交叉编译器科普

    交叉编译工具链的命名规则为:arch [-vendor] [-os] [-(gnu)eabi] arch - 体系架构,如ARM,MIPS vendor - 工具链提供商 os - 目标操作系统 ea ...

  7. Linux Platform驱动模型(二) _驱动方法

    在Linux设备树语法详解和Linux Platform驱动模型(一) _设备信息中我们讨论了设备信息的写法,本文主要讨论平台总线中另外一部分-驱动方法,将试图回答下面几个问题: 如何填充platfo ...

  8. getstyle() 获取样式

    问题:在js动画中,如果元素设置了border,padding等,获取到的样式是盒子的样式,这样会影响动画的正常显示. 解决方案一:在元素的行内添加样式  如 <div style=" ...

  9. 无线网络中,使用MDK3把指定的用户或者热点踢到掉线

    准备 1:系统环境为ubuntu16.04, 2:需要mdk3, mdk3这个软件需要通过apt安装, 需要kali系统的源 3:需要安装aircrack-ng套件 今天这套东西,可以在未连接上靶机网 ...

  10. websevice(Web服务)基础

    webservice简介: 1.WebService到底是什么? WebService是一种跨编程语言和跨操作系统平台的远程调用技术.所谓跨编程语言和跨操作平台,就是说服务端程序采用java编写,客户 ...