- 博客(10)
- 资源 (6)
- 收藏
- 关注
原创 codeforces 1051d D. Bicolorings (dp)
题目大意是给你一个2*n的地图,然后每个格子可以涂黑色也可以涂白色,问得到k个联通块的涂色方案数,一列2个格子的涂色方案只有4种。首先定义状态:dp[i][j][v]为前i列格子,第i列状态为j,连通块个数为v对应的涂色方案数,然后手推一下dp[i][0][v],dp[i][1][v],dp[i][2][v],dp[i][3][v]对应的递推式即可,这里用滚动数组滚掉一维也可以,最后答案就是dp[...
2018-10-31 23:14:06 163
原创 Educational Codeforces Round 51 (Rated for Div. 2) C. Vasya and Multisets
题目大意就是给你n个数,然后问你能否把这n个数分给2个集合,使得2个集合里的nice number个数相同,(nice number即在该集合里仅出现一次的数)。问是否存在分配方案,首先 一共有三种情况,如果n个数里仅出现一次的数的个数为偶数个,那么肯定存在。还有就是如果仅出现一次的数的个数为奇数个,那么还要看是否存在出现次数>=3的数,有的话就存在,没有的话就不存在。#include...
2018-10-30 18:55:17 248
原创 51Nod-1625-夹克爷发红包(二进制枚举+贪心)
正解是枚举n行的全部情况,然后针对每种情况对m列进行贪心,求最大值,最后取最大值里的最大值。#include<bits/stdc++.h>using namespace std;#define ll long long#define fuck(x) cout<<#x<<" "<<x<<endl;ll mp1[15][205]...
2018-10-29 01:07:18 212
原创 51Nod 1191 消灭兔子 (贪心+优先队列)
对兔子血量排个降序(即从血多的开始杀),对弓箭按伤害值降序排。对每一只兔子,都要把能杀死他的弓箭的价值入队,入队完毕以后,如果队列为空说明这个兔子杀不了,不为空说明这个兔子能杀,那就从能杀这个兔子的弓箭里选个最便宜的,按照这样对n只兔子操作#include<bits/stdc++.h>using namespace std;#define ll long longcon...
2018-10-21 20:21:55 183
原创 51nod 1596 搬货物
对于这n堆货物,能进行合并就进行合并,合并到不能合并为止,然后要算一下2的幂有多少个即可,合并的话是只有2个2的同次幂可以合并,2的不同次幂不可以合并。#include<bits/stdc++.h>using namespace std;const int maxn=1e6+30;int cnt[maxn];inline int read(){ int ...
2018-10-21 20:14:51 98
原创 Codeforces Round #377 (Div. 2)-D. Exams
传送门因为天数越大通过所有考试的可能性就越大,具有单调性所以可以二分天数,然后check的话,就要用到贪心的思想从后往前扫(因为越晚考试复习的时间就越多),设变量统计1到mid通过的考试的数量,还有通过这些考试所需要的复习时间。#include<bits/stdc++.h>using namespace std;const int maxn=1e5+10;int vis...
2018-10-19 01:38:07 127
原创 Codeforces Round #515 (Div. 3) E. Binary Numbers AND Sum
由题意可以知道a&b产生的值对答案有m次贡献,按次算贡献值是肯定超时的,所以按位算贡献,观察可以发现只有a这个二进制数里的1对答案有贡献,贡献值为pre[i]*这个1对应的值(即假如这个1是第i为,则这个1对应的值就是2^(i-1)),pre[i]表示二进制数b第i位及前面1的个数,用前缀和的思想求。#include<bits/stdc++.h>using name...
2018-10-13 20:57:43 172
原创 Codeforces Round #515 (Div. 3) D. Boxes Packing
比赛的时候这题的题意一直没看懂,后面才明白意思就是有n个物品,然后要求最多可以挑选出多少物品,挑选过程是从第一给物品开始往右边挑选,对于每一个物品,如果目前的盒子剩余空间是>=该物品的体积的就直接放进盒子,继续挑选下一个物品,若目前的盒子剩余空间是<该物品的体积的,那就要另外开一个盒子来放物品了,若目前已经没有可用的盒子了,说明这次选取是非法的,那么之前选取的所有物品都不可以得...
2018-10-13 17:30:34 196
原创 牛客练习赛27 水图(思维+暴搜)
画几个图就可以发现,经过每个点最少一次的最短路径即使,总边权*2-从x点出发走的一个最长的路径,可以想象成这个最长的路径对应的分支是最后走的,走到了该分支的叶子节点,就满足要求了,就不必回到x点了,#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=50000+10;...
2018-10-03 10:58:58 195
原创 Supermarket POJ - 1456 (贪心+并查集)
先将n个物品按价值降序排个序,从头扫到尾,对于每一个物品i,判断能不能在<=di的最大时间点卖掉。#include<stdio.h>#include<algorithm>#include<iostream>#include<string.h>using namespace std;const int maxn=1e4+10;s...
2018-10-03 10:51:27 261
qpsk_AWGN.m
2019-12-24
基于matlab的QPSK系统仿真.doc
2019-12-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人