设为首页 加入收藏

TOP

POJ 3411 Paid Roads
2015-07-20 17:43:04 来源: 作者: 【 】 浏览:2
Tags:POJ 3411 Paid Roads

?

?

Paid Roads
Time Limit: 1000MS ? Memory Limit: 65536K
Total Submissions: 5383 ? Accepted: 1923

?

Description

A network of m roads connects N cities (numbered from 1 to N). There may be more than one road connecting one city with another. Some of the roads are paid. There are two ways to pay for travel on a paid road ifrom city ai to city bi:

in advance, in a city ci (which may or may not be the same as ai);after the travel, in the city bi.

The payment is Pi in the first case and Ri in the second case.

Write a program to find a minimal-cost route from the city 1 to the city N.

Input

The first line of the input contains the values of N and m. Each of the following m lines describes one road by specifying the values of ai, bi, ci, Pi, Ri (1 ≤ i m). Adjacent values on the same line are separated by one or more spaces. All values are integers, 1 ≤ m, N ≤ 10, 0 ≤ Pi , Ri ≤ 100, PiRi (1 ≤ i m).

Output

The first and only line of the file must contain the minimal possible cost of a trip from the city 1 to the city N. If the trip is not possible for any reason, the line must contain the word ‘impossible’.

Sample Input

4 5
1 2 1 10 10
2 3 1 30 50
3 4 3 80 80
2 1 2 10 10
1 3 2 10 50

Sample Output

110

Source

Northeastern Europe 2002, Western Subregion
题意: 一共有编号从1~N的N个城市,城市之间有m条道路,一些路是要收费的。如果从ai到bi之前有经过ci城市,则收Pi的钱,否则收Ri的钱。求从城市1到城市N最小的花费。
题解: DFS~~ 搜索所有的路径,点可以重复走~~ 但是有个约束条件,一个点顶多走三次,不然就形成环出不来 了~~
PS: 开始题目意思没看懂....?.........
AC 代码:
#include
  
   
#define Max 9999999
using namespace std;
int map[11][5],n,m,count=0,res=Max;
int p[11],pt[11]={0};
void dfs(int k){
	if(k==n){
		if(count
   
    >n>>m; for(int i=1;i<=m;i++) p[i]=1; for(int i=1;i<=m;i++) cin>>map[i][0]>>map[i][1]>>map[i][2]>>map[i][3]>>map[i][4]; dfs(1); if(res!=Max) cout<
     
    
   
  
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇NYOJ-小明的调查作业 下一篇ZOJ 3812 We Need Medicine(牡丹..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C++中智能指针的性能 (2025-12-25 03:49:29)
·如何用智能指针实现c (2025-12-25 03:49:27)
·如何在 C 语言中管理 (2025-12-25 03:20:14)
·C语言和内存管理有什 (2025-12-25 03:20:11)
·为什么C语言从不被淘 (2025-12-25 03:20:08)