![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
比赛题目
文章平均质量分 82
SSL_LHNB
Violence Works Wonders
展开
-
来自学长的快乐AK题——Day3
#include<iostream>#include<cstdio>#include<cstring>#include<vector>#include<algorithm>using namespace std;int lena,lenb,a[100005],b[100],s[100],ans;string s1,s2;vector <int> v[26];void check(int k){ if(k&1原创 2021-08-11 12:33:38 · 90 阅读 · 0 评论 -
来自学长的快乐AK题——Day2
来自学长的快乐AK题——Day2A——蜜汁做法B——最小生成树C——维护第k大的数D——差分。。。之类的东东TipsA——蜜汁做法Descriptionn个小球排成一列,第i个小球颜色为ai定义小球i与j的距离为|(i-j)*(ai-aj)|求所有小球间距离之和i与j 和 j与i 不必重复计算100%:n<=1000000,0<=ai<=1思路由条件容易得到:只有当ai-aj不为0,即ai和aj不相等时,距离才不为0。也就是说,只有ai与aj不相等的两个小球才能产生贡献原创 2021-08-13 08:09:03 · 206 阅读 · 3 评论 -
来自学长的快乐AK题——Day1
来自学长的快乐AK题——Day1A——快乐区间动规A——快乐区间动规Description定义操作a(X)b= ((a&b) + (a|b))>>1给出n个数ai每次用操作合并任意相邻ai求进行n-1次操作以后可能得到的最终结果所有结果从小到大输出思路考虑区间DP,设fi,j,k表示区间i~j能否通过合并得到数字k,为1则能,为0则否。考虑如何转移。用区间DP的老套路,枚举分割点g,将区间i~j分割为区间i~g和区间g+1~j,将两个小区间的状态合并得到大区间的状态原创 2021-08-16 15:46:57 · 113 阅读 · 0 评论 -
牛客网普及组第二次比赛B纸牌游戏
牛客网普及组第二次比赛C纸牌游戏这道题代码极其简单,但思想比较难想到首先,考虑满足什么条件时,游戏会一直进行下去,换言之,在经过一轮抽牌后,每个人手上的牌数都不会发生变化显然,当一个人所抽到的牌数大于或等于自己被抽走的牌数,那么这个人的牌数就都不会发生变化。考虑最坏的情况,如果除了你之外的n-1个人都来抽你的牌,那么你至少要能抽回来n-1张牌才能保证自己不被淘汰。而如果每个人都能够抽n-1个人的牌,那每个人都不会被淘汰,游戏就会一直进行下去思想弄懂了,代码就十分简单,将每个人按a值排序,从最小的人原创 2020-10-21 17:45:19 · 165 阅读 · 0 评论 -
牛客网普及组第二次比赛C涨薪
涨薪这道题初看比较绕,但只要想通一个点就比较简单:给哪些员工涨薪很容易想到用贪心的思想,将员工的初始工资从大到小排序,每次给第1到第x个员工涨3倍工资,给第x+1到第x+y个员工涨2倍工资。(方案有很多种,例如每次换着给不同的员工涨薪来保留更多员工,但显然不是最优的,有兴趣的可以自己证明)那么显然,前1到x个员工会涨m次3倍工资,前x+1到x+y个员工会涨m次2倍工资,而后面的员工则不需要考虑。(除非年数小于2,我就没考虑这种情况,呜呜~~)这就可以用快速幂来优化了。(快速幂还不会的,自己去搜博原创 2020-10-25 17:13:09 · 118 阅读 · 0 评论 -
2020CSP-J总结
呜呼,这次CSP-J才考了235,在一等奖分数线上下徘徊,左右横跳,难受香菇。。。但人总要振作起来,写篇博客,总结一下这次比赛的得失,继续努力T1水题,只需要判断该数二进制下的某一位是否有数,输出就行了。特判最低位。T2今年给T2恶心坏了,居然没想到用桶排,呜呜纯模拟+桶排,就可以AC了,但我才85,比赛时太紧张,脑子抽了,怎么也没想到用桶排,哎T3(实话说,今年的模拟题真恶心)...原创 2020-11-28 07:43:29 · 1074 阅读 · 0 评论