8-12-COMPETITION
A.HDU 2544 最短路
算是最基础的题目了吧.............我采用的是Dijkstra算法.......
代码:
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std; #define inf 0x3f3f3f3f
int map[][],d[],vis[],n,m; int Dijkstra()
{
memset(vis,,sizeof(vis));
for(int i=;i<=n;i++)
d[i]=(i==?:inf);
for(int i=;i<=n;i++)
{
int x,minn=inf;
for(int j=;j<=n;j++)
if(!vis[j] && d[j]<minn)
{
minn=d[j];
x=j;
}
vis[x]=;
for(int y=;y<=n;y++)
d[y]=min(d[y],map[x][y]+d[x]);
}
return d[n];
} int main()
{
int i,u,v,w;
while(~scanf("%d%d",&n,&m),n,m)
{
memset(map,inf,sizeof(map));
for(i=;i<m;i++)
{
scanf("%d%d%d",&u,&v,&w);
map[u][v]=map[v][u]=w;
}
printf("%d\n",Dijkstra());
}
return ;
}
B.HDU 3790 最短路径问题
......Loading......
C.HDU 3665 Seaside
题意:就是找到海边的最短路~
这道题其实还是很简单的~就是输入麻烦的点.......╮(╯▽╰)╭把输入搞清了就SO EASY~
代码:
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std; const int inf=;
int a[][],b[]; int main()
{
int u,v,i,j,n,s,t,k,sum,ll,number,maxx;
while(~scanf("%d",&n))
{
for(i=;i<n;i++)
for(j=;j<n;j++)
a[i][j]=inf;
for(i=;i<n;i++)
a[i][i]=;
for(i=;i<n;i++)
{
scanf("%d%d",&u,&b[i]); //u代表该镇与几个town相连,b[i]代表该镇是否临海~
for(j=;j<u;j++)
{
scanf("%d%d",&number,&ll); //number代表是哪个镇,ll代表u镇与该镇相连的距离
if(a[i][number]>ll)
a[i][number]=a[number][i]=ll;
}
}
for(i=;i<n;i++)
for(j=;j<n;j++)
for(k=j+;k<n;k++)
if(a[j][k]>a[j][i]+a[i][k])
{
a[j][k]=a[j][i]+a[i][k];
a[k][j]=a[j][k];
}
maxx=inf;
for(i=;i<n;i++)
{
if(a[][i]<maxx && b[i]==)
maxx=a[][i];
}
printf("%d\n",maxx);
}
return ;
}
//memory:264KB time:0ms
D.HDU 1869 六度分离
简而言之~是很简单的题~把每个人的关系都弄出来~只要都满足不大于6个人就是YES,反之NO~
代码:
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std; const int inf=;
int a[][]; int main()
{
int u,v,w,i,j,n,m,s,t,k;
while(~scanf("%d%d",&n,&m))
{
for(i=;i<n;i++)
for(j=;j<n;j++)
a[i][j]=inf;
for(i=;i<n;i++)
a[i][i]=;
for(i=;i<m;i++)
{
scanf("%d%d",&u,&v);
a[u][v]=a[v][u]=;
}
for(i=;i<n;i++)
for(j=;j<n;j++)
for(k=j+;k<n;k++)
if(a[j][k]>a[j][i]+a[i][k])
{
a[j][k]=a[j][i]+a[i][k];
a[k][j]=a[j][k];
}
w=;
for(i=;i<n;i++)
for(j=i;j<n;j++)
if(a[i][j]>)
{w=-; break;}
if(w==-) printf("No\n");
else
printf("Yes\n");
}
return ;
}
//memory:320KB time:31ms
E.HDU 1874 畅通工程续
是很简单的题~和A极端的像.............但TLE很多次........刚开始百思不得其解........结果后来发现,就是与A题太像了,结果自己就擅自做主把A题的“输入0,0退出”,直接就套到这道题上了.........T T.........让人泪奔的错误啊.......
代码:
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std; const int inf=;
int a[][]; int main()
{
int u,v,w,i,j,n,m,s,t,k;
while(~scanf("%d%d",&n,&m))
{
for(i=;i<n;i++)
for(j=;j<n;j++)
a[i][j]=inf;
for(i=;i<n;i++)
a[i][i]=;
for(i=;i<m;i++)
{
scanf("%d%d%d",&u,&v,&w);
if(a[u][v]>w)
a[u][v]=a[v][u]=w;
}
for(i=;i<n;i++)
for(j=;j<n;j++)
for(k=j+;k<n;k++)
if(a[j][k]>a[j][i]+a[i][k])
{
a[j][k]=a[j][i]+a[i][k];
a[k][j]=a[j][k];
}
scanf("%d%d",&s,&t);
if(a[s][t]==inf) printf("-1\n");
else
printf("%d\n",a[s][t]);
}
return ;
}
//memory:332KB time:31ms
F.HDU 1317 XYZZY
......Loading......
G.HDU 4360 As long as Binbin loves Sangsang
......Loading......
H.POJ 1847 Tram
......Loading......
I.POJ 1062 昂贵的聘礼
......Loading......
8-12-COMPETITION的更多相关文章
- python 各模块
01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 语言支 ...
- Python Standard Library
Python Standard Library "We'd like to pretend that 'Fredrik' is a role, but even hundreds of vo ...
- 在mybatis中写sql语句的一些体会
本文会使用一个案例,就mybatis的一些基础语法进行讲解.案例中使用到的数据库表和对象如下: article表:这个表存放的是文章的基础信息 -- ------------------------- ...
- CIFAR-10 Competition Winners: Interviews with Dr. Ben Graham, Phil Culliton, & Zygmunt Zając
CIFAR-10 Competition Winners: Interviews with Dr. Ben Graham, Phil Culliton, & Zygmunt Zając Dr. ...
- Kaggle Competition Past Solutions
Kaggle Competition Past Solutions We learn more from code, and from great code. Not necessarily alwa ...
- [新概念英语] Lesson 12 : GOODBYE AND GOOD LUCK
Lesson 12 : GOODBYE AND GOOD LUCK New words and expressions : luck (n) 运气 例句 You're not having much ...
- 1198 - Karate Competition
1198 - Karate Competition PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 ...
- AndroidStudio — Error:Failed to resolve: junit:junit:4.12错误解决
原博客:http://blog.csdn.net/u013443865/article/details/50243193 最近使用AndroidStudio出现以下问题: 解决:打开app下的buil ...
- 读过MBA的CEO更自私?《哈佛商业评论》2016年第12期。4星
老牌管理杂志.每期都值得精度.本期我还是给4星. 以下是本书中的一些内容的摘抄: 1:他们发现在Airbnb上,如果客人姓名听起来像黑人,那么比名字像白人的客人的接受率会低16%.#45 2:对立组织 ...
- 12个小技巧,让你高效使用Eclipse
集成开发环境(IDE)让应用开发更加容易.它们强调语法,让你知道是否你存在编译错误,在众多的其他事情中允许你单步调试代码.像所有的IDE一 样,Eclipse也有快捷键和小工具,这些会让您感觉轻松许多 ...
随机推荐
- 通过xib文件创建和连接UIView
使用Xcode写程序,时间长了,对于界面上的元素,很多时候不想手写代码进行构建,但是有些UIView里面的子控件,又不能通过xib直接进行构造,要是总使用UIViewController来结合xib进 ...
- ExtJS4.2学习(17)表单基本输入控件Ext.form.Field(转)
鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-12-11/189.html --------------- ...
- Spring+MyBatis实践—登录和权限控制
1.实现用户登录功能: 通过session来实现用户登录功能.在用户登录时,将用户的相关信息放在HttpSession对象用,其中HttpSession对象可以通过HttpServletRequest ...
- Android ExpandableListView的简单应用
Expandablelistview1Activity.java package com.wangzhu.demoexpandablelistview; import java.util.ArrayL ...
- [OJ] Data Stream Median (Hard)
LintCode 81. Data Stream Median (Hard) 思路: 用一个大根堆保存较小的一半数, 一个小根堆保存较大的一半数. 每次根据num和两个堆顶的数据决定往哪个堆里面放. ...
- 模拟+二分 poj-1019-Number Sequence
题目链接: http://poj.org/problem?id=1019 题目大意: Sk表示123...k 把S1S2S3...Sk排成一行 比如:112123123412345123456.... ...
- 【HDOJ】1074 Doing Homework
最开始以为是贪心,不过写到一半发现不对,看了一下讨论,知道需要使用状态压缩DP,现在还没有使用深搜实现(据说可以)晚上实现一下,道理应该是类似的.前面做八数码,至今未果,就说需要状态压缩.这个太神奇了 ...
- 浏览器编辑HTML
运行效果: 浏览器编辑HTML // test.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- WIKIOI 3243 区间翻转
3243 区间翻转 题目描述 Description 给出N个数,要求做M次区间翻转(如1 2 3 4变成4 3 2 1),求出最后的序列 输入描述 Input Description 第一行一个数N ...
- 调试UnhandledExceptionFilter
kernel32!UnhandledExceptionFilter通过判断当前进程是否附加了调试器,如果附加,就把异常交给调试器,如果没有,就把异常交给进程的UnhandledExceptionFil ...