nyist 510昂贵的聘礼
/*
好好的图论题啊,最短路的应用,dijkstra算法
*/
#include <iostream>
using namespace std;
const int INF=100000;
int a[105][105],b[105],c[105],s[105],dist[105];
int n,m;
int dj(int p,int q)
{
int i,j,r,t,k=0;
for(i=0;i<n;i++)
if((b[i]>=p&&b[i]<=q)) dist[i]=a[k][i], s[i]=0; else dist[i]=INF,s[i]=0;
dist[0]=0; s[0]=1;
for(i=1;i<n;i++)
{
t=INF;
for(j=0;j<n;j++)
if(!s[j]&&dist[j]<t) t=dist[j],k=j;
s[k]=1;
for(j=0;j<n;j++)
if(!s[j]&&a[k][j]<INF&&b[j]>=p&&b[j]<=q)
{
r=dist[k]+a[k][j];
if(dist[j]>r) dist[j]=r;
}
}
t=c[0];
for(i=0;i<n;i++)
if(dist[i]+c[i]<t) t=dist[i]+c[i];
return t;
}
int main(int argc, char *argv[])
{
int i,j,k,p,q,l,r;
while(cin>>m>>n&&(m||n))
{
for(i=0;i<n;i++)
for(j=0;j<n;j++)
a[i][j]=INF;
for(i=0;i<n;i++)
{ cin>>c[i]>>b[i]>>k;
for(j=0;j<k;j++)
{
cin>>p>>q;
a[i][p-1]=q;
}
}
r=c[0];
for(i=b[0]-m;i<=b[0];i++)
{
k=dj(i,i+m);
if(k<r) r=k;
}
cout<<r<<endl;
}
return 0;
}
nyist 510昂贵的聘礼的更多相关文章
- POJ1062昂贵的聘礼[最短路建模]
昂贵的聘礼 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 45892 Accepted: 13614 Descripti ...
- 昂贵的聘礼(dijkstra)
昂贵的聘礼 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 38549 Accepted: 11158 Descripti ...
- POJ 1062 昂贵的聘礼
C - 昂贵的聘礼 Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u Submit St ...
- 最短路(Dijkstra) POJ 1062 昂贵的聘礼
题目传送门 /* 最短路:Dijkstra算法,首先依照等级差距枚举“删除”某些点,即used,然后分别从该点出发生成最短路 更新每个点的最短路的最小值 注意:国王的等级不一定是最高的:) */ #i ...
- Poj OpenJudge 百练 1062 昂贵的聘礼
1.Link: http://poj.org/problem?id=1062 http://bailian.openjudge.cn/practice/1062/ 2.Content: 昂贵的聘礼 T ...
- POJ 1062 昂贵的聘礼 (最短路)
昂贵的聘礼 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/M Description 年轻的探险家来到了一个印第安部落里.在那里 ...
- POJ1062昂贵的聘礼(dijkstra)
昂贵的聘礼 题目大意是说有N个物品,每个物品都有自己的价格,但同时某些物品也可以由其他的(可能不止一个)替代品,这些替代品的价格比较“优惠”,问怎么样选取可以让你的花费最少来购买到物品1 由于有N个物 ...
- 昂贵的聘礼--POJ1062
昂贵的聘礼 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 20000/10000K (Java/Other) Total Submiss ...
- POJ1062 昂贵的聘礼 【DFS】
昂贵的聘礼 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 37475 Accepted: 10816 Descripti ...
随机推荐
- 《大话设计模式》学习笔记0:设计模式的原则 && UML类图
一.单一职责原则:就一个类而言,应该仅有一个引起它变化的原因. 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力.这种耦合会导致脆弱的设计 ...
- Linux C 程序 指针数组和二级指针(TEN)
指针数组和二级指针 #include<stdio.h> int main(){ ] = {,,,,}; ], i; int **pp = p; //使p指针数组指向每一个a ; i < ...
- Linq一对多联合查询
问题: 学生表,班级表,我要班级下面学生 A表,字段:AID,CLASSB表,字段 :BID,BNAME,AIDA表数据1 班级12 班级2B表数据1 学生1 12 学生2 1 3 学生3 24 学生 ...
- python学习之jquery小练习
<html> <head> <title>html/css/js学习小结</title> <script src="jquery-1.8 ...
- python 控制台输出中文乱码问题
乱码原因: 源码文件的编码格式为utf-8,但是window的本地默认编码是gbk,所以在控制台直接打印utf-8的字符串当然是乱码了! 解决方法: 1,print mystr.decode('utf ...
- Js 处理将时间转换 “年-月-日”
将时间 \/Date(1432828800000+0800)\/" 转换成:“年-月-日” //时间转换function ChangeDateFormat(val) { if (v ...
- Create CSS3 Buttons Compatible with All Browsers
Create CSS3 Buttons Compatible with All Browsers http://www.ourtuts.com/create-css3-buttons-compatib ...
- Java-使用js进行编码,后台解码。
1:使用js编码 var value=window.encodeURI(window.encodeURI(strValue)); 2:Java类中解码. String str=URLDecoder.d ...
- Mybatis+SpringMVC的项目环境搭建
一.web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&qu ...
- 解决 Eclipse build workspace 慢,validation javascript 更慢的问题
鸣谢:http://zuoming.iteye.com/blog/1430925 ------------------------------------------------ 如果用到js插件或者 ...