F. Cards and Joy】的更多相关文章

F - Cards and Joy 思路:比较容易想到dp,直接dp感觉有点难,我们发现对于每一种数字要处理的情况都相同就是有 i 张牌 要给 j 个人分, 那么我们定义dp[ i ][ j ]表示 i 张牌给 j 个人分最大的价值可以得到dp方程如下: dp[ i ][ j ] = max(dp[ i - u ][ j - 1 ] + f[ u ] )   u <= k 暴力转移就好了. #include<bits/stdc++.h> #define LL long long #def…
F. Cards and Joy 题目大意: 给你n个人,每一个人恰好选k张牌. 第一行是 n 和 k 第二行有n*k个数,代表有n*k张牌,每张牌上的数字 第三行有n个数,代表第i个人喜欢的数字 第四行有k个数,代表有如果一个人可以拿到 i 张喜欢的牌,那么快乐值+h[i] 然后就是让你分配这些牌来找最大的欢乐值. 这个题目仔细想想就知道,因为这个h数组是递增的,所以我们就是要尽量把这个人喜欢的牌分配给她. 如果一种牌喜欢的人只有一个,那就把这个类型都给她,但是如果有很多人喜欢一样的牌,那就要…
题目连接:http://codeforces.com/contest/999/problem/F 解题心得: 题意说的很复杂,就是n个人玩游戏,每个人可以得到k张卡片,每个卡片上有一个数字,每个人有一个喜欢的数字,每一个玩游戏的人如果有不同数量自己喜欢的卡片就有不同的欢乐值.问怎样分配使欢乐值最大. 就是一个组合背包的问题,dp[i][j]代表有i个人,j张喜欢的卡片,得到的总欢乐值最大是多少.在转移的过程中只需要枚举第i个人有几张自己最喜欢的卡片就可以了. 转移方程式dp[i][j] = ma…
原题链接:F - Cards (atcoder.jp) 题意: 给定N张牌,每张牌正反面各有一个数,所有牌的正面.反面分别构成大小为N的排列P,Q. 求有多少种摆放方式,使得N张牌朝上的数字构成一个1~N的排列. 思路:dp + 并查集 建图:有1~N的顶点,然后Pi跟Qi连一条边. 因为给定的是两个排列,所以每个点的度数为2,因而建出的图必然是由几个独立的环构成. 根据乘法原理,答案就等于每个环的方案数相乘. 求每个环的方案数: 假设环的大小为n(点的数量),dp[n]表示这样的环的方案数:d…
There are nn players sitting at the card table. Each player has a favorite number. The favorite number of the jj-th player is fjfj. There are k⋅nk⋅n cards on the table. Each card contains a single integer: the ii-th card contains number cici. Also, y…
链接:https://ac.nowcoder.com/acm/contest/908/F 题意: AFei has many cards. Each card has a number written on it. Now he wants to takes some out of his card and puts them in a box. And he wants to know whether the card with the number x was in the box. So…
题目链接:http://codeforces.com/problemset/problem/999/F 题目大意:有n个人,n*k张卡牌,每个人会发到k张卡牌,每个人都有一种喜欢的卡牌f[i],当一个人拥有x张喜欢的卡牌时会增加h[x]点愉悦值,求合理的发牌方式使得所有人的愉悦值之和最大,输出最大愉悦值.解题思路:设dp[x][y]表示当x个人拥有同一种喜欢的卡牌且该卡牌有y张时的最大愉悦值.则状态转移的根本取决于第x个人拥有几张喜欢的卡牌,所以得到状态转移方程:for (int i = 0;…
传送门 题目大意 有n个人n*m张牌,每个人分m张牌.每个人有一个自己喜欢的数值,如果他的牌中有x张数值等于这个值则他的高兴度为L[x],求怎样分配牌可以使得所有人的总高兴度最大. 分析 我们发现每一个人只有他喜欢的值对他有影响.所以我们统计出喜欢值x的人有多少和有多少值为x的牌,对于每一个x设dp[i][j]表示考虑了喜欢x的人中的前i个给他们分配j张值为x的牌的最大高兴度.最后的答案就是所有不同x的最终dp值的和. 代码 #include<iostream> #include<cst…
F. Cards and Joy time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output There are nn players sitting at the card table. Each player has a favorite number. The favorite number of the jj-th player…
感觉现在\(div3\)的题目也不错啊? 或许是我变辣鸡了吧....... 代码戳这里 A. Mishka and Contes 从两边去掉所有\(≤k\)的数,统计剩余个数即可 B. Reversing Encryption 显然,加密的过程是可逆的 考虑反向还原的方法,加密的时候的时候是逆向的,所以我们解密再用正向,即从1-n枚举n的约数,然后倒转字符串即可 C. Alphabetic Removals 以字母为第一关键字,位置编号为第二关键字,排个序,去掉前k个 在剩余的中,按照位置再排个…