PAT 1003
来源:互联网 发布:李小璐开的淘宝店名字 编辑:程序博客网 时间:2024/05/21 19:22
#include <iostream>using namespace std;int N, M, C1, C2;int numTeam[501];int road[501][501];int visit[501];int minDistance = -1, maxAmount = -1;int cnt = 0;void input(){ cin >> N >> M >> C1 >> C2; for (int i = 0; i < N; i++) { //初始化 visit[i] = 0; for (int j = 0; j < N; j++) { road[i][j] = -1; road[j][i] = -1; } cin >> numTeam[i]; } int c1, c2, L; for (int i = 0; i < M; i++) { cin >> c1 >> c2 >> L; road[c1][c2] = L; road[c2][c1] = L; }}void DFS(int start, int distance, int amountTeam){ if (distance > minDistance && minDistance != -1) return; if (start == C2) { if (distance < minDistance || minDistance == -1)//找到最短路径 { cnt = 1; minDistance = distance; maxAmount = amountTeam; } else if (distance == minDistance)//最短路径中最多队伍数量 { cnt++; if (amountTeam > maxAmount) maxAmount = amountTeam; } return; } for (int i = 0; i < N; i++) { if (visit[i] == 0 && road[start][i] != -1) { visit[i] = 1; DFS(i, distance + road[start][i], amountTeam + numTeam[i]); visit[i] = 0; } }}int main(){ input(); visit[C1] = 1; DFS(C1, 0, numTeam[C1]); cout << cnt << ' ' << maxAmount << endl; return 0;}
0 0
- pat 1003
- pat 1003
- PAT 1003
- pat 1003
- PAT 1003
- pat 1003
- PAT 1003
- pat 1003
- PAT 1003
- PAT 1003
- PAT 1003
- 浙江大学pat 1003
- pat advanced 1003
- 浙大pat Advance 1003
- pat(basic level) 1003
- PAT basic 1003
- Pat 1003 Emergency (25)
- PAT Basic 1003
- smarty的分页
- Android获取CPU使用率的几种方式
- IO输出类型
- GOOGLE VR SDK开发VR游戏,VR播放器之一
- DM8148开发板U-boot编译步骤
- PAT 1003
- 有final引出的一个问题
- 文章标题
- 10个集合,集合中无重复元素,但元素个数海量。求这个10个集合的交集。
- 【《代码整洁之道》精读与演绎】之一 让代码比你来时更干净
- navigationBar导致collectionViewCell/tableViewCell偏移
- Linux下获取文件编译的时间
- 例子:fgets函数
- 【《代码整洁之道》精读与演绎】之二 高质量代码的命名法则