每日一题
我们教练不会签到
neuq人 签到只会stl,dp只会背包,数据结构只会入门,乱搞假算法折磨队友
展开
-
Codeforces Round #750 (Div. 2) D. Vupsen, Pupsen and 0
一周多没见了,最近快到几科结课考试时间了,孩子好累5555。。。。同样希望你不认识她。。。。题目简洁明了,创造bi数组使满足∑ai⋅bi=0,同时满足∑abs(bi)<1e9(虽然感觉这条跟摆设一样,但还是写了个gcd)思路:对于一个二元组ai,aj(ai>0 , aj>0),我们需要得出 bi=-aj和 bj=-ai 与之对应关键部分(用gcd处理了一下,怕超过限制。。。) while(bg<=ps){//bg是前下标,ps是后下标 int .原创 2021-10-24 23:33:05 · 196 阅读 · 1 评论 -
【每日一题】Codeforces Round #747 (Div. 2) D - The Number of Imposters
思维+实现 可以尝试思路:如果 A 在评论中说 B 是船员,则 A 和 B 属于同一团队(冒名顶替者或船员)。 如果 A 在评论中说 B 是冒名顶替者,则 A 和 B 属于不同的团队。如果 A 和 B 在同一个团队中,那么我们添加权重为 0 的边,否则添加权重为 1。给出ac代码#include<bits/stdc++.h>using namespace std;const int N=2e5+5;int f[2*N],size[2*N]; ..原创 2021-10-10 21:26:42 · 166 阅读 · 0 评论 -
【每日一题】Codeforces Round #732 (Div. 2) C. AquaMoon and Strange Sort
思维题(乱搞题),做完恍然大悟,可以试试题目:大意就是 给一串数字,每个数字必须交换偶数次,能不能把这些数字变成单调递增数列先看样例3,观察到如果对于相邻字母改变时(其他无需改变)无法调整,再看样例1,2,发现交换前后对于每个数字位置的奇偶性保持不变。(这点不好想)最后给出ac代码:#include<bits/stdc++.h>using namespace std;int cnt[100005][2],a[100005];int main(){ i..原创 2021-10-08 20:42:56 · 112 阅读 · 0 评论 -
【每日一题】二维费用的背包问题
acwing上的一道板子题加一层状态解决问题,最近打算开数位dpac代码:#include<bits/stdc++.h>using namespace std;int dp[1005][1005];//左边体积 右边重量int main(){ int n,v,m; cin>>n>>v>>m; int vi,mi,wi; for(int i=1;i<=n;i++){ cin>>vi>>mi&.原创 2021-10-08 00:23:25 · 80 阅读 · 0 评论 -
【每日一题】洛谷 p1433 吃奶酪 状压dp
- [P1433 吃奶酪](https://www.luogu.com.cn/problem/P1433)换一种类型,这次求长度最小值,(n<15)接着状压题目:房间里放着nn块奶酪。一只小老鼠要把它们都吃掉,问至少要跑多少距离?老鼠一开始在(0,0)(0,0)点处。梳理状态:1吃了几个,2吃了哪几个(dp[i个][吃完第i个是什么状态])写出递推式dp[j][i]=min(dp[j][i],dp[p][i-(1<<(j-1))]+a[p][j]);/...原创 2021-10-06 17:00:07 · 301 阅读 · 0 评论 -
【每日一题】2019 ICPC Malaysia National F 状压dp
这题有点意思,卡了不少时间题目大意就是有两行正整数按照从1到n的顺序排列,两行数之间两两匹配,有两个条件要满足,1是两数之间不能超过e,2是有k组数不能匹配。看到e的取值不大我们直接选择状压dp[当前位置][当前状态]+=dp[上个位置][上个状态]for(int i=1;i<=n;i++){//选一个人 for(int p=0;p<(1<<(2*e+1));p++){//上一个人的所有状态 for(int j=-e;j<=e;j++){/.原创 2021-10-04 12:05:33 · 191 阅读 · 0 评论 -
【每日一题】2019 ICPC Malaysia National E - Optimal Slots
不无聊的一道题,可以试试,明天做f题Problem - E - Codeforceshttps://codeforces.com/gym/102219/problem/E题目:您住所的主厅向当地社区和公众开放。 由于它是建立在公众捐赠的基础上的,因此使用它是免费的。 每个周末,尤其是公共假期,最多可预订 50 次,用于不同持续时间的多个活动。 您已被居民指派制定一项选择活动的计划,以最大限度地利用每个周末的分配时间,并尽可能缩短未使用的时间。 程序应该找到最能填满分配时间的事件,并按照预订列表中出.原创 2021-10-03 23:33:59 · 128 阅读 · 0 评论 -
【每日一题】P1220 关路灯 区间dp
经典区间dpP1220 关路灯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)败犬二人组大意:一个村庄有一条路,有一个人关灯,每个灯的功率不一,要怎么关灯才能使耗电最小看到题目之后先分析,假如两侧只有两盏灯、三盏灯、四盏灯。。。。一直到n盏灯,属于递推关系(每多一盏灯多两次判断),递推式和数量相关,存在两种状态(位于已经关掉一定数量的灯的左边,或者右边)梳理一下状态,(左端点,右端点,所在位置(0在左,1在右)dp[i][j][0]/dp[i][j][1]得到递原创 2021-09-30 16:04:55 · 181 阅读 · 0 评论 -
【每日一题】 Codeforces Round #691 (Div. 2) Row GCD
有点久远的一题,觉得题目极为简洁,写起来挺好玩的。just monikaProblem - C - Codeforces问所给b[j]从gcd(a[1],b[j])一直gcd到gcd(a[n],b[j])考的是一个性质:gcd(a,b)=gcd(a,|b-a|)然后仔细想想,让每项都消掉b[j]的做法,思路:聪明的你一定秒懂了(别吐槽我的字。。。。。)最后给出ac代码:#include<bits/stdc...原创 2021-09-29 22:22:15 · 115 阅读 · 0 评论 -
【每日一题】Codeforces Round #744 (Div. 3) D Productive Meeting
《签到只会stl》(笑了)指到的人去刷到dp。:.゚ヽ(。◕‿◕。)ノ゚.:。+゚题目:一个重要的会议要召开,正好邀请了n个人。 任何时候,任何两个人都可以退后一步,私下交谈。 同样的两个人可以在每次会议上多次(按他们想要的次数)交谈。 每个人的社交能力都是有限的。 第i个人的社交能力是一个非负整数ai。 这意味着在完全 ai 谈话之后,此人离开会议(并且不再与其他任何人谈话)。 如果ai=0,第i个人在会议开始后立即离开。 如果在会议期间进行了尽可能多的会谈,则会议被认...原创 2021-09-29 00:51:07 · 160 阅读 · 1 评论 -
每日一题 股票买卖V 【acwing】状态机模型
一道拿来练手的dp,思维不深但是可以练习动态规划中寻找状态,确定递推式。原创 2021-09-27 22:52:59 · 183 阅读 · 0 评论