- 博客(6)
- 收藏
- 关注
原创 2021HDU多校联赛 3 Photoshop Layers
Photoshop Layers题目链接:Photoshop Layers题目大意:给你 N 个RGB颜色数据,每个数据有一个操作,如果是1的话就覆盖上一个颜色,如果是2的话就叠加上一个颜色(颜色的最高强度不会超过255)。给你 K 次询问,每次询问X,Y两个值,输出从X到Y的颜色相加的结果。题解:在说题解之前先介绍几个大家都会的基本知识(估计就我忘了 呜~库鲁西):c语言是可以直接读入十六进制的数的,方法为 scanf(“%x”)c语言是可以直接输出十六进制的数的,方法为 printf(
2021-07-29 14:58:16 200
原创 Codeforces Global Round 15 B Running for Gold
B Running for Gold 题目链接题目大意:N个运动员,每个运动员有五场比赛记录,如果某个运动员有三场比赛的成绩优于另一个运动员,则说这个运动员优于另一个运动员,如果存在一个运动员优于所有运动员,则认为这个运动员可以获得冠军,要求你输出冠军的编号或者在不存在冠军的时候输出-1 。题解:正常思维是将每个运动员与所有运动员都比一次,复杂度是O(n2n^2n2)跑不完 1e5,所以这里我们考虑优化一下:如果存在一个运动员是冠军,那他和任意一个其他运动员相比的结果都是胜利,所以如果某个运动
2021-07-26 14:50:49 224
原创 2021牛客暑期多校训练营3 B Black and white
B Black and white题目链接:第三场B题题目大意:用题目所给算法给你一个矩阵,将一个点涂黑的花费为该点上的值,如果一个2*2的区域内已经有了三个位置被涂黑,涂黑第四个位置不需要代价,问涂黑整个矩阵的最小代价。题解:可以证明涂黑整个矩阵只需要首先涂黑n+m-1个点,当然这n+m-1个点需要达到某种条件,即任意一个点所在的行和列都存在被涂黑的点。以下几个图符合条件:如果直接对于矩阵来思考最小值比较困难,不如换个思路:可以用矩阵来表示两个点连边的代价(如p[i][j]=k表
2021-07-25 00:19:00 414 2
原创 Codeforces Round #734 (Div. 3) AB12C题解
A. Polycarp and Coins题目大意:用n枚2元硬币和m枚一元硬币支付某个价格,要求n与m的差值尽量小,题解:总价格除以三,余下的部分用一个一元或两元硬币来支付。#include<bits/stdc++.h>#define ll long longusing namespace std; const int N=2e5+5;const int inf=0x3f3f3f3f; int main(){ int t; cin>>t; whi
2021-07-24 15:49:45 86
原创 2021HDU多校第一场 1005 Minimum spanning tree
1005 Minimum spanning tree题目链接题目大意:给你一个从2~N-1的排列,构建一个边权值最小的树,两个点的边权值为两个点数字的最小公倍数。题解:可以发现,对于某个数,如果这个数是合数,那么一定有一个质数和他的最小公倍数是这个合数本身。如果这个数是质数,则该数和2的最小公倍数最小。所以结果显而易见,如果某个数是质数,就将其与根节点 2 连边,否则就与它的质因数连边,每条边的权值是两个点的最小公倍数。跑个埃氏筛就行代码:#include<bits/stdc++.h
2021-07-23 15:15:59 173
原创 2021HDU多校训练赛(1)1008
2021HDU多校训练赛(1)1008(HDU6957)Maximal submatrix链接:HDU6957题目大意:给你一个矩阵,输出最大的列不下降的子矩阵。题解:题目经预处理每个点的最长不下降序列之后可以转化为求直方图中的最大矩形(该图片源链接来自@ojzha_gcx 原文链接)求直方图最大矩形可以使用单调栈前后跑两次,也可以使用悬点法dp,代码如下#include<bits/stdc++.h>#define ll long longusing namespace
2021-07-22 21:30:13 253 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人