codeforces 742D (分组背包)】的更多相关文章

D. Arpa's weak amphitheater and Mehrdad's valuable Hoses   Just to remind, girls in Arpa's land are really nice. Mehrdad wants to invite some Hoses to the palace for a dancing party. Each Hos has some weight wi and some beauty bi. Also each Hos may h…
2018-03-11 http://codeforces.com/contest/946/problem/D D. Timetable time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Ivan is a student at Berland State University (BSU). There are n days in…
题目链接:http://codeforces.com/problemset/problem/946/D 题目大意:有n个字符串,代表n天的课表,1表示这个时间要上课,0表示不要上课,一天在学校时间为第一节课到最后一节课的时间.总共,可以逃过k次课,求至少需要在学校多少时间. 解题思路:听了大佬说背包,然后预处理就想了20多分钟,比赛结束,GG...先是预处理出v[i][k]即第i天逃k节课的能节约的最多时间,至于怎么求,直接枚举k,然后枚举两端1的位置即可.然后就可以做分组背包了,这就不说了,很…
给出一群女孩的重量和颜值 和她们的朋友关系 现在有一个舞台 ab是朋友 bc是朋友 ac就是朋友 给出最大承重 可以邀请这些女孩来玩 对于每一个朋友团体 全邀请or邀请一个or不邀请 问能邀请的女孩的最大颜值 比赛的时候一看就是个背包问题 似乎在背包九讲上面见过..但是不会写 于是百度.."背包 一类选一个" 百度出了分组背包 并且第一个搜索结果就是类似于原题的东西.. 只不过分组背包的模板是一个or不要 加了个bfs 把朋友团体作为一个新朋友加入进这个团体 改了改代码..就a了..…
D. Arpa's weak amphitheater and Mehrdad's valuable Hoses Problem Description: Mehrdad wants to invite some Hoses to the palace for a dancing party. Each Hos has some weight wi and some beauty bi. Also each Hos may have some friends. Hoses are divided…
A. Arpa’s hard exam and Mehrdad’s naive cheat time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output There exists an island called Arpa’s land, some beautiful girls live there, as ugly ones do. Me…
<题目链接> 题目大意: 就是有n个人,每个人都有一个体积和一个价值.这些人之间有有些人之间是朋友,所有具有朋友关系的人构成一组.现在要在这些组中至多选一个人或者这一组的人都选,在总容量为W的情况下,如何使得所选人的价值总和最大. 解题分析: 很明显有朋友关系的人需要用DFS或者并查集进行分组.考虑全选这一组的情况,需要将这一组的人打包,看成一个人,然后塞入对应的组中.之后的分组背包就能够实现全选这一组的人的情况. #include <bits/stdc++.h> using na…
花了两个晚上来搞这道题. 第一个晚上想思路和写代码,第二个晚上调试. 然而还是菜,一直调不对,我的队友是Debug小能手呀(真的是无敌,哈哈,两个人一会就改好了) D. Timetable   time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Ivan is a student at Berland State Universi…
传送门 蒟蒻净做些水题还请大佬见谅 没错这又是个一眼的分组背包. 题意简述:有n棵树,每只树上有aia_iai​只鸟,第iii棵树买一只鸟要花cic_ici​的钱,每买一只鸟可以奖励bbb块钱,从一棵树移动到下一棵树可以奖励xxx块钱,最初有www块钱,求买下的鸟的数量的最大值. 由于钱数很大,考虑按照选择的鸟的方案数来进行dpdpdp. 我们定义状态fi,jf_{i,j}fi,j​表示走过前iii棵树买下来jjj只鸟的剩下钱数的最大值. 最后看使得fn,jf_{n,j}fn,j​合法的jjj的…
题目链接:Timetable 题意:Ivan是一个学生,在一个Berland周内要上n天课,每天最多会有m节,他能逃课的最大数量是k.求他在学校的时间最小是多少? 题解:先把每天逃课x节在学校呆的最小时间预处理出来,这样就变成了在n天里面,每个组有不同的情况,找出逃课t节的能在学校呆最小时间的情况.就是一个分组背包问题了. #include<bits/stdc++.h> using namespace std; ; ; int N,M,T,S; int num[MAX_N]; int pos[…