csu 10月 月赛 I 题 The Contest
Description
殷犇有很多队员。他们都认为自己是最强的,于是,一场比赛开始了~
于是安叔主办了一场比赛,比赛有n个题目,每个题目都有一个价值Pi和相对能力消耗Wi,但是有些题目因为太坑不能同时做出来,并且坑题具有传递性。(a和b一起做会坑、b和c会坑则a和c也会坑) ACM队员们想知道,于是他们想知道在能力范围内,它们最多可以作出多少价值的题目。
聪明的你,告诉我,能帮帮他们吗?
Input
第1行两个整数,n,Wmax,k(0<=n,Wmax,k<=1000),其中n为题目总数,Wmax为初始的总能力数.
接下来n行,为每个题目的Pi,Wi(0<=Pi<=1000,1<=Wi<=10,均为整数)
再接下来k行,每行2个数字a,b表示a和b会坑
Output
对每组数据输出1行为最大可能价值
Sample Input
Sample Output
HINT
每个测试点1s
CSU_WJQ
Source
#include<cstdio>
#include<algorithm>
#include<cstring>
#define maxn 1005
using namespace std; int f[maxn],value[maxn],consume[maxn],dp[maxn],zu[maxn];
bool vis[maxn];
int find(int x)
{
int tmp=x;
while(x!=f[x])x=f[x];
while(f[tmp]!=x)
{
int y=tmp;
f[y]=x;
tmp=f[tmp];
}
return x;
} int main()
{
int n,w,k,x,y,a,b;
while(scanf("%d%d%d",&n,&w,&k)!=EOF)
{
memset(dp,,sizeof dp);
memset(vis,,sizeof vis);
for(int i=; i<=n; i++)
{
f[i]=i;
scanf("%d%d",&value[i],&consume[i]);
}
for(int i=; i<=k; i++)
{
scanf("%d%d",&x,&y);
int a=find(x);
int b=find(y);
f[b]=a;
}
for(int i=; i<=n; i++)
find(i);
int tot=,mark;
while()
{
for(int i=; i<=n; i++)
{
if(f[i]>)
{
mark=f[i];
break;
}
}
for(int k=w; k>=; k--)
for(int j=; j<=n; j++)
if(f[j]==mark)
{
if(k>=consume[j])
dp[k]=max(dp[k],dp[k-consume[j]]+value[j]);
}
for(int i=; i<=n; i++)
if(f[i]==mark)
{
f[i]=;
tot++;
}
if(tot==n)break;
}
printf("%d\n",dp[w]);
}
}
csu 10月 月赛 I 题 The Contest的更多相关文章
- csu 10月 月赛 H 题 A Very Hard Problem
Description CX老湿经常被人黑,被黑得多了,自己也就麻木了.于是经常听到有人黑他,他都会深情地说一句:禽兽啊! 一天CX老湿突发奇想,给大家出了一个难题,并且声称谁能够准确地回答出问题才能 ...
- csu 10月 月赛 J 题
Description CSU又到了一年中评奖学金的时候了……各大学霸都或多或少地拿到了各种奖学金(你们自己看着办吧). 在这里,评奖学金有个很奇怪的规矩——每个同学得到的奖学金数一定满足相邻的两个非 ...
- csu 10月 月赛 D 题 CX and girls
Description CX是要赶去上课,为了不迟到必须要以最短的路径到达教室,同时CX希望经过的路上能看到的学妹越多越好.现在把地图抽象成一个无向图,CX从1点出发,教室在N号点,告诉每个点上学妹的 ...
- csu 10月 月赛 F 题 ZZY and his little friends
一道字典树异或的题,但是数据比较水,被大家用暴力给干掉了! 以前写过一个类似的题,叫做the longest xor in tree: 两个差不多吧! 好久没写字典树了,复习一下! 代码: #incl ...
- csu 10月 月赛 B 题 Scoop water
一个卡特兰数的应用: 卡特兰数主要有以下几个用途: 1.不同的出栈入栈数: 2.n个点组成的不同的二叉树的数目: 3.凸多边形的三角剖分划分: 4.括号化问题: 通项公式是:h(n) = C(2n-2 ...
- csu 10月 月赛 A 题
Welcome to CSU OnlineJudge Problem A: Small change Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 15 ...
- Contest2037 - CSU Monthly 2013 Oct(中南大学2013年10月月赛水题部分题解)
Problem A: Small change 题解:http://www.cnblogs.com/crazyapple/p/3349469.html Problem B: Scoop water 题 ...
- 【LGR-054】洛谷10月月赛II
[LGR-054]洛谷10月月赛II luogu 成功咕掉Codeforces Round #517的后果就是,我\(\mbox{T4}\)依旧没有写出来.\(\mbox{GG}\) . 浏览器 \( ...
- CSU 8月月赛 Decimal 小数化分数
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1303 这个OJ很容易跪所以我贴一下题目 Description 任意一个分数都是有理数,对于任意一 ...
随机推荐
- uedoc 源码解析
思路分析 node 包使用 1. JSON5 2. art-template 3.
- su: cannot set user id: Resource temporarily unavailable
今天R&D所在主机出现su: cannot set user id: Resource temporarily unavailable资源不可用报错,直接通过其他机器ssh huyuh@xxx ...
- Bind开启IPv6功能
[root@localhost sbin]# ./named -v bind 9.5.1-p3-v3.0.9 1,服务器开启IPv6服务 网卡配置v6地址 [root@localhost ~]# if ...
- Python解释器运行成功,命令运行显示无此属性解决办法
情况1: 查看出错的地方的Import包,看本程序是否有名字与import名称相同的py文件或者pyd文件. 有的话删除或者更名即可.
- bootstrap.css.map这个文件有何用处?该怎能使用它?
. ├── bootstrap.css ├── bootstrap.css.map ├── bootstrap.min.css ├── bootstrap-theme.css ├── bootstra ...
- Nginx 简单的负载均衡配置示例
http://www.cnblogs.com/xiaogangqq123/archive/2011/03/02/1969006.html 在此记录下Nginx服务器nginx.conf的配置文件说明, ...
- 20160331javaweb之JSP include 指令&&九大隐式对象
3.零散知识 (1)jsp映射 <servlet> <servlet-name>index</servlet-name> <jsp-file>/inde ...
- Servlet单实例多线程模式
http://kakajw.iteye.com/blog/920839 前言:Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率.由于Servlet/JSP默认是以 ...
- Java_Iterator-------迭代器配合Listarray使用,具有更多的功能(转载)
转载自:http://www.cnblogs.com/amboyna/archive/2007/09/25/904804.html 迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可 ...
- JavaScript高级程序设计(二):在HTML中使用JavaScript
一.使用<script>元素 1.<script>元素定义了6个属性: async:可选.表示应该立即下载脚本,但不应该妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本 ...