首页 > TAG信息列表 > 734
【DP 记录】AcWing 734. 能量石
传送门 给你几个物品,每种选一次,求最大价值,首先想到 01 背包,但是我们遇到了一个问题: 普通的 01 背包在选择物品时是不讲求顺序的,但在这道题中,物品的选择是有顺序的(即对最优解贡献有顺序),显然 \(O(n!)\) 枚举排列不可取,那我们能否提前确定好顺序,再来做背包呢? $\bullet\ $ 考虑从贪心Codeforces Round #734 (Div. 3)
比赛链接 Codeforces Round #734 (Div. 3) D1. Domino (easy version) 给你 \(t\) 组数据。对于每组数据给你一个 \(n \times m\) 的网格(\(n\) 为网格高度, \(m\) 为网格宽度,且网格的数量为偶数),要求在网格中放置多米诺骨牌,每个骨牌占据 \(1 \times 2\) 的网格区域。对于这 \(\frac{AcWing 734 能量石
题目传送门 一、贪心(微扰) + \(dp\) 这道题还是比较难的,前置知识: 贪心的微扰(邻项交换)证法,例题:国王游戏,耍杂技的牛 贪心将问题转化: 发现有可能存在最优解的某些宝石的贡献为\(0\),我们剔除了这些宝石。 假设最优解的能量石排列长度为\(k(1<=k<=n)\) 因为去掉了那些没有贡献的宝石,位codeforces round #734 (div 3)
d2 - Domino (hard version) 定义多米诺骨牌是一个 \(1\times 2\) 的小矩形 . 给定 \(n,m,k\),求是否可以将一个 \(n\times m\) 的方格( \(n\) 行 \(m\) 列)用多米诺密铺(不重不漏地铺满),其中横向的多米诺有 \(k\) 个。若可以,则给出任意一种构造方案。 输出方案时,输出一个由小写字母组Codeforces Round #734 (Div. 3)补题
比赛时就做了前两个题跑路了,补一下剩下的 别骂了别骂了太菜了,C题做了半个小时TLE了,想了一会没啥优化思路就看了眼D然后去当我的情感大师去了,草 参考博客:1 2 B2. Wonderful Coloring - 2 传送门:B2. Wonderful Coloring - 2 看了别人的题解,这思路跟我大差不离啊,笨比一个不知道哪里出Codeforces Round #734 (Div. 3)——B2
Codeforces Round #734 (Div. 3) 文章目录 题意思路代码总结 题意 给你n个数字,和k种颜色,现在给这n个数字上色,每个数字可以不涂色k种颜色必须都用到,且每种颜色用到的数量相同相同的数字颜色不能相同尽可能多的涂色 思路 首先我们肯定,如果某种数字的个数超过了k,那么超过codeforce Round 734 div3 题解报告
总结 其实这场比赛也没啥好总结的,当天过生日,就没有打这场比赛,第二天刚好有空就找时间虚拟参与了一下。题目难度不大,都是代码量很小的思维题。做的时候还是遇到了很多卡住的问题。之后补题发现很多题自己的写法都不够优秀。这里写一篇题解记录一下这套题。如果有不对的地方,欢Codeforces Round #734 (Div. 3) (A-C)
A 太简单了,写完就删了 B1 #include <bits/stdc++.h> using namespace std; #define int long long signed main() { int t; cin >> t; while (t--) { int ch[33]; memset(ch, 0, sizeof(ch)); string str; cin >> str; for (int i = 0; i < str.lCodeforces Round #734 (Div. 3) A~D1 个人题解
比赛链接:Here 1551A. Polycarp and Coins (签到) 题意: 我们有任意个面额为 \(1\) 和 \(2\) 的硬币去支付 \(n\) 元账单, 现在请问怎么去分配数额使得 \(c_1 +2 * c_2 = n\) 并且要最小化 \(|c_1-c_2|\) 贪心, 很容易想到最小化 \(|c_1 - c_2|\) 等于 \(0\) 或 \(1\) int main() {