题目链接:https://vjudge.net/contest/152219#overview。

  水题较多。就贴一下当时没做出来的几题好了。

  D,方法很简单,当时没想出来。用pos[x]表示x这个数已经是递增序列的第几个了,那么每次输入一个数x,令pos[x] = pos[x-1] + 1并更新答案ans即可。(当然所有pos都要预先设为0)

  H,记忆化搜索连样例都过不了= =,不知道为什么,觉得可能是因为一个点可以经过好几次的原因。参考了BH学长的方法,先floyd预处理出两两之间的距离,再暴力枚举需要访问点的顺序,维护最小值即可。代码如下:

 1 #include <stdio.h>
 2 #include <algorithm>
 3 #include <string.h>
 4 #include <iostream>
 5 #include <vector>
 6 #include <queue>
 7 using namespace std;
 8 typedef long long ll;
 9 const int N = 100 + 5;
10 typedef pair<int,int> pii;
11 const int inf = 0x3f3f3f3f;
12
13 int dis[N][N];
14 int n,m,f;
15 int have[15];
16 int id[15];
17 void floyd()
18 {
19     for(int k=1;k<=n;k++)
20     {
21         for(int i=1;i<=n;i++)
22         {
23             for(int j=1;j<=n;j++)
24             {
25                 dis[i][j] = min(dis[i][j], dis[i][k] + dis[k][j]);
26             }
27         }
28     }
29 }
30
31 int main()
32 {
33     int T; cin >> T;
34     int kase = 1;
35     while(T--)
36     {
37         scanf("%d%d%d",&n,&m,&f);
38         memset(dis,inf,sizeof dis);
39         for(int i=1;i<=n;i++) dis[i][i] = 0;
40         for(int i=1;i<=m;i++)
41         {
42             int u,v,w;
43             scanf("%d%d%d",&u,&v,&w);
44             dis[u][v] = dis[v][u] = w;
45         }
46         for(int i=1;i<=f;i++) scanf("%d",have+i), id[i] = i;
47         floyd();
48         int ans = inf;
49         do
50         {
51             int sum = dis[1][have[id[1]]] + dis[have[id[f]]][n];
52             for(int i=1;i<f;i++) sum += dis[have[id[i]]][have[id[i+1]]];
53             ans = min(ans, sum);
54         }while(next_permutation(id+1,id+1+f));
55         printf("Case %d: %d\n",kase++,ans);
56     }
57 }

H

  

  最后一题待补。

转载于:https://www.cnblogs.com/zzyDS/p/6485871.html

2015 Syrian Private Universities Collegiate Programming Contest相关推荐

  1. 2015 Syrian Private Universities Collegiate Programming Contest 题解

    题目在这里>_< 发现这场比赛在网上没有完整的题解,甚至连题目代码都没人贴出来(大概是因为题目太水了吧...).所以宝宝就来写个题解,也就当作成长记录了233333 A. Window 题 ...

  2. 2015 HIAST Collegiate Programming Contest J

    Polygons Intersection 题意:给2个凸多边形,求相交面积 思路:不会,套板子就是了 AC代码: #include "iostream" #include &qu ...

  3. 2015 German Collegiate Programming Contest (GCPC 15)

    2015 German Collegiate Programming Contest (GCPC 15) B. Bounty Hunter II 给定一张DAG,求一种方案:用最少的路径将所有点覆盖. ...

  4. (寒假开黑gym)2018 ACM-ICPC, Syrian Collegiate Programming Contest

    layout: post title: (寒假开黑gym)2018 ACM-ICPC, Syrian Collegiate Programming Contest author: "luow ...

  5. (寒假开黑gym)2018 ACM-ICPC, Syrian Collegiate Programming Contest(爽题)

    layout: post title: (寒假开黑gym)2018 ACM-ICPC, Syrian Collegiate Programming Contest(爽题) author: " ...

  6. 2015 ACM Arabella Collegiate Programming Contest(F题)

    F. Palindrome [ Color: Pink ] A string is palindrome if it can be read the same way in either direct ...

  7. (寒假开黑gym)2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017)

    layout: post title: (寒假开黑gym)2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017) au ...

  8. 2018 German Collegiate Programming Contest (GCPC 18)

    2018 German Collegiate Programming Contest (GCPC 18) Attack on Alpha-Zet 建树,求lca 代码: #include <al ...

  9. 2017-2018 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2017)

    D.Distinctive Character 看到样例,第一个反应贪心.先写了个按这一位1和0的数目多少,确定0还是1的东西.感觉不够真,又写了个尽量加到相似的比较小的串上的贪心.在和前边的那个组合 ...

最新文章

  1. C# 文件操作(上传 下载 删除 文件列表...)
  2. Python将classification_report的结论转化为字典(dict)形式并提取模型的灵敏度(sensitivity)、特异度(specificity)、PPV和NPV指标、混淆矩阵图
  3. fuel6.0安装部署
  4. elasticsearch 最佳实践
  5. zbb20180913 java synchronized同步静态方法和同步非静态方法的异同
  6. 技术人解读企业为什么要平台化,关于数据中台你不知道的事...
  7. 大数据学习笔记51:Flume Channel Selectors(Flume通道选择器)
  8. [IE编程] 打开/关闭IE8的光标浏览模式(Caret Browsing)
  9. 2.2 流程控制-for序列 2.3 流程控制-for字典 2.4 循环退出 2.5 流程控制-while
  10. 11个思维导图知识点整理帮你决胜考研(基础课和计算机专业课)| 寻找C站宝藏
  11. Font family [‘sans-serif‘] not found.Falling back to DejaVu Sans.解决办法
  12. Vue3 Echarts散点图+高德地图+卫星地图(二)——Echarts配置散点图高德卫星地图版
  13. vue中面包屑的实现方法
  14. 数字逻辑电路 逻辑运算 与、或、非、与非、或非、与或非、异或、同或 二进制运算技巧
  15. esxi与unraid比较
  16. 《人物动作:角色骨骼、蒙皮制作工艺》
  17. Json 实现数据添加/更新 的页面效果
  18. 【数学】手写开根号(牛顿迭代法 | 二分)
  19. pandas数据分析和pyecharts可视化周杰伦MV弹幕(多图长文)
  20. 看看这些鲜为人知的宝藏Python数据科学包吧!

热门文章

  1. No Babel config file detected for xxx(未检测到Babel配置文件)和Already included file name解决方案
  2. 关于MD服装大师制作后导入到SP中的设置相关问题
  3. Tableau笔记(一):tableau 如何绘制环形图
  4. .Net Core 登陆验证
  5. JavaWeb酒店管理系统
  6. axure转化成代码_​教大家如何查看Axure页面的代码
  7. C语言·三角形已知三边求面积题
  8. python鞋子_Micropython 鞋码匹配仪(标题图与内容无关)
  9. 什么是网页设计中的滚动设计?如何进行滚动设计?
  10. 国庆第七天的一些杂感