谢天意
谢天意
全部文章
题解
归档
标签
去牛客网
登录
/
注册
谢天意的博客
全部文章
/ 题解
(共53篇)
题解 | #「土」巨石滚滚#
这题一直没有想到一个完备的证明方法,直到了看到了一篇博客首先如果撞了能加防御值,一定放在前面,也就是说分成两类,撞了之后加防御的,这一部分按照破坏值排序即可,因为要尽量把防御值增加到最大才更可能撞大的第二种情况 对于一个顺序,改变其中两个的位置,对其他的不造成影响,所以只考虑 a和b 如果ab可以b...
排序
贪心
思维
2021-04-12
0
552
题解 | #矩阵消除游戏#
枚举题 每行选或者不选,很容易想到二进制枚举。。。就是调试要很久 #include<iostream> #include<algorithm> using namespace std; int n,m,k,ans,ans2=0; int a[20][20],b[20][20]...
枚举
贪心
二进制枚举
2021-04-12
1
649
题解 | #牛牛的木板#
题意 给定一个长度为n的序列,有0和1,可以将m个0变为1,求最长的1的长度双指针 只要没超过m个就往右延申,超过了就l右移,一直移动到不超过m class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 ...
双指针
尺取法
2021-04-12
0
582
题解 | #糖糖别胡说,我真的不是签到题目#
题意 两组一共n个同学排成一行,每个同学有个分值,有m次操作每次将1到mi的同学分值加一,每个同学可以消灭排在他前面不同组且分值低于他的同学,问一个有多少同学没消灭了首先不考虑m次操作,每个同学有没有消灭取决于他后面的同学有没有比他分值大且不同组的。可以发现从后面开始遍历,存下来两组的最大值就可以。...
差分
贪心
枚举
思维
2021-04-12
0
538
题解 | #奇♂妙拆分#
题意 把一个自然数尽可能拆成多个不同的自然数的乘积本着能整除就整除的原则,从小到大枚举,如果有个小的数可以整除但不选他,情况1他是个质数,会使得少一个数,情况二,他是个和数,考虑把他拆了能不能变成两个或多个不同的数,拆了后的数一定比他小,从前面的能除就除可以发现不会有没除的情况,所以这个原则是正确的...
贪心
思维
2021-04-12
0
592
题解 | #起床困难综合症#
这题被优先级卡了很久。。。对于位运算的题,基本思路就是拆成二进制考虑,先用全0串和全1串去匹配n次操作,对于每一位,0变成1则选0,0变成0同时1变成1,不超过m的情况下要选1,其余不用考虑,可以发现变成1的尽量都选上了,也就是最大值 #include<iostream> using n...
二进制枚举
位运算
2021-04-10
1
755
题解 | #[SCOI2005]扫雷MINE#
题意 有个2*n的地图,规则和扫雷一样,第二列没雷,给定第二列的数,求有几种情况可以满足第二列思路 后面有没有雷可以根据第一个数推出来,也是唯一的,所以最多只有两种可能枚举即可,因为最后一个数也是只有两个地方相关,所以要特判 #include<iostream> using namesp...
枚举
思维
2021-04-09
0
561
题解 | #排座椅#
可以发现 行和列是不相关的 所以只用单独考虑行和列就行,取最大值,在按编号排序 #include<iostream> #include<algorithm> using namespace std; int ans1[10010],ans2[10010]; struct no...
排序
暴力
2021-04-09
0
468
题解 | #丢手绢#
题意 n个人围成一圈,两个人的距离为顺时针和逆时针距离较短的那个,求两个人的最长距离解法一 对于每个人来说,考虑哪个人离他最远,容易想到在sum[n]附近,所以可以二分找左右的3个人,复杂度nlongn解法二 尺取 和二分思路差不多 但是复杂度更低 i j遍历n就可 #include<iost...
双指针
尺取法
2021-04-09
0
578
题解 | #「土」秘法地震#
题意 边长为k的小矩阵中不全为0的矩阵的个数很明显 前缀和然后枚举,以前一般从左上角开始枚举,要考虑边界情况,发现可以从右下角开始枚举可以不用考虑边界问题,学到了。 #include<iostream> using namespace std; int ans,n,m,r,a[1010]...
枚举
前缀和
2021-04-09
0
576
首页
上一页
1
2
3
4
5
6
下一页
末页