WFU校赛题解 B、C、F
problem B:
解题代码:
#include <iostream>
#include <algorithm>
#include <queue>
#include <cstring>#define LL long long
using namespace std;const int N = 1e5 + 10;int ne[2*N],e[2*N],h[N],dis[N],st[N],w[2*N],arr[N];
int n,m,idx,k;void add(int a,int b,int c)
{e[idx] = b,w[idx] = c,ne[idx] = h[a],h[a] = idx++;
}void spfa()
{st[1] = 1;dis[1] = 0;queue<int> q;q.push(1);while(q.size()){auto t = q.front();q.pop();st[t] = 0;for(int i = h[t];i != -1; i = ne[i]){int j = e[i];if(dis[j] > dis[t] + w[i]){dis[j] = dis[t] + w[i];if(!st[j]){st[j] = 1;q.push(j);}}}}return ;
}int main()
{memset(h,-1,sizeof h);memset(dis,0x3f3f3f3f,sizeof dis);scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){int a,b,c;scanf("%d%d%d",&a,&b,&c);add(a,b,c);add(b,a,c);}scanf("%d",&k);for(int i=1;i<=k;i++)scanf("%d",&arr[i]);spfa();int maxx = -1,ans = -1;for(int i=1;i<=k;i++)if(maxx<=dis[arr[i]]){maxx = dis[arr[i]];ans = i;}cout << ans << "\n";return 0;
}
problem C
可从i:1-n枚举每个物品 在j:1-m范围内的最大重量 转移方程f[j] = min(f[j],f[j-v[i]] + w[i])
DP方法:
#include <iostream>
#include <algorithm>using namespace std;
const int N = 1e6 + 10;int v[N],w[N];
int f[N];
int n,m;int main()
{scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)scanf("%d%d",&v[i],&w[i]);for(int i = 1;i <= n; i++)for(int j = 1;j <= m; j++)if(v[i]<=j)f[j] = max(f[j],f[j-v[i]] + w[i]);cout << f[m] << "\n";return 0;
}
problem F:
将每个蜂巢造成的伤害值进行排序,从最小端开始对 伤害值进行累计,找到<=h的最大数量
解题代码
#include <iostream>
#include <algorithm>#define LL long long
using namespace std;
const int N = 1e3 + 10;int arr[N];
int n,h;int main()
{scanf("%d%d",&n,&h);for(int i=1;i<=n;i++)scanf("%d",&arr[i]);sort(arr+1,arr+1+n);int sum = 0;int i = 1;while(sum + arr[i] <= h && i<=n){sum += arr[i];i++;}cout << i - 1 << "\n";return 0;
}
WFU校赛题解 B、C、F相关推荐
- 大连海事大学ACM校赛题解
大连海事大学ACM校赛题解 感谢xzx对题目的排版~ 作为出题人之一,我先简单说一下我认为的题目难度. 我觉着第一档比较容易的签到题是L.J.M,L就是向下取整的签到:J是简单思维.构造题,到了6以后 ...
- zju 2007校赛题解
发信人: kelefe (~_~), 信区: ACMICPC标 题: [zz from freecity]zju校赛题解发信站: 逸仙时空 Yat-sen Channel (Wed Apr 18 18 ...
- 2019xupt-acm校赛 题解 ( F.猜球球 ) by出题组tongtong
重现赛链接 2019 ACM ICPC Xi'an University of Posts & Telecommunications School Contest 前面的话 有幸参与2019X ...
- 2019xupt-acm校赛 题解(C.给你一个666)by出题组tongtong
重现赛链接 2019 ACM ICPC Xi'an University of Posts & Telecommunications School Contest 前面的话 有幸参与2019X ...
- CTF-NEFU校赛-题解
Write by NEFUNSI: ghosin 0ERROR 签到 signin 下载 signin.txt 打开得到一串 base64,解码得到 flag{we1come_t0_NEFUCTF!} ...
- [置顶]2010年东北大学ACM程序设计竞赛冬季校赛题解
8题只做出4题比较easy的题,而且做得挺麻烦,看来还要多练练. AC的题如下 NEUOJ 1112 I Love Apple Description So many people love app ...
- 埃森哲杯上海大学春季赛暨金马五校赛题解汇总
比赛时候卡在全场题L,心态很崩,后来其他题目思考不进去了...加上一个队友临时有事也没来训练...最后4题收尾... 补题补题,现在把暂时都切出来的题目放上题解和代码吧~ -------------- ...
- 【牛客网】埃森哲杯第十六届上海大学程序设计联赛春季赛暨上海高校金马五校赛 题解
题目连接 A.Wasserstein Distance (水题) 题意:给你2行土a,b,每行都有n堆,每堆对应有a[i],b[i]克,我们可以对a中的土进行移动,移动任意堆的k克泥土到a中其他堆消耗 ...
- 2017年浙江理工大学程序设计竞赛校赛 题解源码(A.水, D. 简单贪心 ,E.数论,I 暴力)...
Problem A: 回文 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 1719 Solved: 528 Description 小王想知道一个字 ...
最新文章
- METERREC万用表测量自动记录命令
- java运行报错NoClassDefFoundError: com/fasterxml/jackson/databind/JsonNode的解决方案
- javaee后台适合用的编辑器插件
- 算法(6)-leetcode-explore-learn-数据结构-数组字符串的双指针技巧
- 静态链接与动态链接的区别
- 安装squid_「首席推荐」设置Squid转发代理或者正向代理
- [转载] python函数——字典设置默认值get() 与 setdefault()区别
- cjson构建_cjson创建数组
- 遇见phpDesigner我笑了 PHP开发利器
- 谷歌浏览器(1) : 主题
- 学考计算机fix怎么取消,学考XK-80科学型计算器的使用说明.ppt
- 人力资源管理数据分析
- 如何用excel数据分析计算相关系数
- 手把手教你如何 远程控制另一台电脑 保姆教程
- 《北京遇上西雅图之不二情书》
- 3dsMax MaxScript 语法
- M24C08-RMN6TP
- 生物制剂时代的SpA研究正站在十字路口_Appel,Sieper2009
- 程序开发中 status 还是 state
- mysql numeric