第五届“新思齐”杯程序设计大赛正式赛 F题
来源:互联网 发布:最优化算法pdf 编辑:程序博客网 时间:2024/06/06 20:25
题目链接:here~~
动态规划做的
#include <algorithm>#include <iostream>#include <cstring>#include <cstdlib>#include <string>#include <vector>#include <cstdio>#include <cmath>#include <map>#define FLAG 0using namespace std;int p[10010], b[105];//p数组用来存放到达编号为i的点的最小距离,b用来接收当前层的编号int main(){#if(FLAG) freopen("in.txt", "r", stdin);//freopen("out.txt", "w", stdout);#endif int n, m, N, M, i, x, y, z, min, j, w; while(~scanf("%d%d", &n, &m)) { memset(p, -1, sizeof(p)); p[0]=0; for (i = 1; i<=m; i++) { scanf("%d%d", &N, &M); for (j = 1; j<=N; j++) cin>>b[j]; for (j = 1; j<=M; j++) { scanf("%d%d%d", &x, &y, &w); if (w<=0||p[x]==-1) continue; if (p[y]<0||p[y]>w+p[x])//求到达编号为y的点的最小距离 p[y]=p[x]+w; } min=(1<<30); for (j = 1; j<=N; j++) { if (p[b[j]]==-1)//如果到达倒数第二层的路<=0,跳过 continue; if (p[b[j]]<min) min=p[b[j]]; } if (min==(1<<30))//如果到达倒数第二层的路都<=0,输出-1 printf("-1\n"); else printf("%d\n", min+1); } min=(1<<30); for (j = 1; j<=N; j++) { if (p[b[j]]==-1) continue; if (p[b[j]]<min) min=p[b[j]]; } if (min==(1<<30)) printf("-1\n"); else printf("%d\n", min+1); }return 0;}
- 第五届“新思齐”杯程序设计大赛正式赛 F题
- 【第八届河南理工大学程序设计大赛(正式赛)】 B E F G I J M
- nyoj 545 第五届河南省程序设计大赛F
- 第五届“图灵杯”NEUQ-ACM程序设计大赛 F题 字符串处理哈夫曼树
- 第五届河南省程序设计大赛
- 第五届河南省程序设计大赛
- 第七届河南理工大学程序设计大赛(正式赛)
- 第七届河南理工大学程序设计大赛(正式赛)
- 华中农业大学第四届程序设计大赛网络同步赛 F
- 华中农业大学第四届程序设计大赛F题LCS
- “玲珑杯”郑州轻工业学院第八届ACM程序设计大赛暨河南高校邀请赛-正式赛心得体会
- “玲珑杯”郑州轻工业学院第八届ACM程序设计大赛暨河南高校邀请赛-正式赛
- 第七届河南理工大学程序设计大赛(正式赛)D题
- 第七届河南理工大学程序设计大赛(正式赛)G题
- 南京理工大学第八届程序设计大赛 F sequence
- 华中农业大学第五届程序设计大赛网络同步赛
- 第五届“图灵杯”NEUQ-ACM程序设计大赛 H题 深搜
- “师创杯”山东理工大学第九届ACM程序设计竞赛 正式赛 F.校赛~校赛~【思维+规律题】
- 解决addView出现异常
- AO实现获取mxd图层workspace,需要将mxd设置为相对路径存储
- 遥控器点击静音出错
- LPC1788单沿pwm原理和配置
- 记忆化搜索
- 第五届“新思齐”杯程序设计大赛正式赛 F题
- Json解析
- 3ds Max建模,Blend设计,VS2008控制WPF的3D模型例子
- Integer to Roman
- 思科3750交换机堆叠技术配置向导
- win32 api遍历目录下所有文件
- 关于3D坐标变换的数学原理
- WINCE 电池状态(C#)
- UIWebView中加载本地图片