栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1092 Arbitrage

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1092 Arbitrage

#include <iostream>#include <cstdio>#include <string.h>#include <string>#include <map>using namespace std;map <string,int> mp;double way[35][35];double dist[35][35][35];int count;void inint(){    int i,j;    for( i=0;i<35;i++ )        for( j=0;j<35;j++ ) way[i][j]=( i==j?1:0 );//初始化稍注意    mp.clear();}void floyd( int n ){    int i,j,k;    double temp;    for( i=0;i<=n;i++ )        for( j=0;j<=n;j++ ) dist[i][j][0]=way[i][j];    for( k=1;k<=n;k++ )        for( i=1;i<=n;i++ ) for( j=1;j<=n;j++ ) {     dist[i][j][k]=dist[i][j][k-1];     temp=dist[i][k][k-1]*dist[k][j][k-1];     if( dist[i][j][k]<temp )         dist[i][j][k]=temp; }    for( i=1;i<=n;i++ )        if( dist[i][i][n]>1 ) break;    if( i!=n+1 )   cout<<"Case "<<count<<": Yesn";    else cout<<"Case "<<count<<": Non";    count++;}int main(){    int n,m,i,j,k;    string a,b;    double v;    count=1;    while( cin>>n && n )    {        inint();        for( i=1;i<=n;i++ )        { cin>>a; mp[a]=i;        }        cin>>m;        for( i=1;i<=m;i++ )        { cin>>a>>v>>b; way[ mp[a] ][ mp[b] ]=v;        }        floyd(n);    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/373678.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号