基础2923题

处理输入很麻烦

有可能一个城市有多辆破车要拖   应该严谨一点的 考虑所有情况

#include<bits/stdc++.h>
using namespace std; int m1[][];
int vis[];int dis[];
#define INF 99999
int n,e,cas; int a1[];int a2[]; void dijkstra(int v0)
{
memset(vis,,sizeof(vis));
for(int i=;i<=n;i++)dis[i]=m1[v0][i];
// for(int i=1;i<=n;i++)printf("%d ",dis[i]);cout<<endl;
vis[v0]=;
for(int i=;i<n-;i++)
{
int minn=INF,u=v0;
for(int j=;j<=n;j++)
{
if(vis[j]==&&dis[j]<minn)
{
u=j;minn=dis[j]; } }
vis[u]=;
for(int j=;j<=n;j++)
{
if(vis[j]==&&dis[u]+m1[u][j]<dis[j])
{
dis[j]=dis[u]+m1[u][j];
} } } }
int a[]; int main()
{
int c1,cas;map<string,int>ma;
int cas1=;
while(scanf("%d%d%d",&n,&c1,&cas)==&&(n+c1+cas))
{ ma.clear();
memset(a,,sizeof(a));
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
{
if(i==j)m1[i][j]=;
else m1[i][j]=INF; }
int c=;string s;cin>>s;
ma[s]=n; for(int i=;i<=c1;i++)
{
cin>>s;
if(!ma[s])ma[s]=++c;
a[i]=ma[s];
}
// printf("pl10\n");
string s1,s2,s3;
while(cas--)
{
cin>>s1>>s2>>s3;
int val=; //cout<<s1<<endl;
// cout<<s2<<endl;
// cout<<s3<<endl;
val=s2[]-'';
int i=;
while(isdigit(s2[i])){ val=val*+s2[i]-''; i++;}
// printf("val=%d\n",val);
if(!ma[s1])ma[s1]=++c;
if(!ma[s3])ma[s3]=++c;
if(s2[]=='<'&&m1[ ma[s3] ][ ma[s1] ]>val)m1[ ma[s3] ][ ma[s1] ]=val;
if(s2[ s2.size()- ]=='>'&&m1[ ma[s1] ][ ma[s3] ]>val)m1[ ma[s1] ][ ma[s3] ]=val; } // for(int i=1;i<=n;i++)
// {
// for(int j=1;j<=n;j++)
// printf("%d ",m1[i][j]);
// cout<<endl;
// } int sum=;
// for(int i=1;i<=c1;i++)printf("%d ",a[i]);cout<<endl;
for(int i=;i<=c1;i++)
{ dijkstra( a[i] );sum+=dis[n]; }
//printf("%d\n",sum);
dijkstra(n);
for(int i=;i<=c1;i++)sum+=dis[ a[i] ]; printf("%d. %d\n",++cas1,sum); } }

Einbahnstrasse HDU2923的更多相关文章

  1. HDU2923 Einbahnstrasse (Floyd)

    Einbahnstrasse Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  2. Einbahnstrasse

    Einbahnstrasse Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...

  3. HDU - 2923 - Einbahnstrasse

    题目: Einbahnstrasse Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...

  4. hdu2923 最短路floyd

    建图还是有点烦人的. #include<map> #include<string> #include<stdio.h> #include<iostream&g ...

  5. 【转】最短路&差分约束题集

    转自:http://blog.csdn.net/shahdza/article/details/7779273 最短路 [HDU] 1548 A strange lift基础最短路(或bfs)★254 ...

  6. 【转载】图论 500题——主要为hdu/poj/zoj

    转自——http://blog.csdn.net/qwe20060514/article/details/8112550 =============================以下是最小生成树+并 ...

  7. 【HDOJ图论题集】【转】

    =============================以下是最小生成树+并查集====================================== [HDU] How Many Table ...

  8. hdu图论题目分类

    =============================以下是最小生成树+并查集====================================== [HDU] 1213 How Many ...

  9. 转载 - 最短路&差分约束题集

    出处:http://blog.csdn.net/shahdza/article/details/7779273 最短路 [HDU] 1548    A strange lift基础最短路(或bfs)★ ...

随机推荐

  1. mongodb系列~关于双活状态的mongodb集群

    一简介:说说我们异地双活的集群 二 背景:需要建立异地双活的架构 三 构建 1 需要保证第二机房至少两个副本集DB,这样在第一机房挂掉后才能保证第二机房的可用性 2 集群状态下第二机房启用config ...

  2. PMM安装-第一篇

    一 简介 今天来聊聊 PMM安装使用 二 安装 1 server端执行   curl -sSL https://get.daocloud.io/docker | sh    docker pull p ...

  3. mysql 5.7 ~ 新特性

    mysql 5.7特性 简介:mysql 5.7内存和线程性能方面的优化一 细节优化 参数:  1 innodb_buffer_pool    改进 innodb_buffer_pool可以动态扩大, ...

  4. caffe添加自己编写的Python层

    由于Python的灵活性,我们在caffe中添加自己定义的层时使用python层会更加方便,开发速速也会比C++更快,现在我就在这儿简单说一下如何在caffe中添加自定义的python层(使用的原网络 ...

  5. OLAP和OLTP的区别(基础知识) 【转】

    联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则.OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 ( ...

  6. mysql系列一、mysql数据库规范

    一. 表设计 库名.表名.字段名必须使用小写字母,“_”分割. 库名.表名.字段名必须不超过12个字符. 库名.表名.字段名见名知意,建议使用名词而不是动词. 表必须使用InnoDB存储引擎. 表必须 ...

  7. uoj#188. 【UR #13】Sanrd(Min_25筛)

    题面 传送门 题解 这是一道语文题 不难看出,题目所求即为\(l\)到\(r\)中每个数的次大质因子 我们考虑\(Min\_25\)筛的过程,设 \[S(n,j)=\sum_{i=1}^nsec_p( ...

  8. 如何判断mac地址时multicast还是broadcast ?

    ethernet 的地址其实就是mac地址,长度为6 byte,其中有一位为 multicast bit 位. 当unicast/multicast bit 位置1时就是 multicast,mac ...

  9. RestTemplate的使用

    1.postForObject :传入一个业务对象,返回是一个String 调用方: BaseUser baseUser=new BaseUser(); baseUser.setUserid(user ...

  10. EntityFramework codefirst Enable-Migrations No context type was found in the assembly “MyApp.Web” error

    Enable-Migrations -Force -ContextTypeName "MyApp.Repository.DataContext" -ProjectName &quo ...