返回顶部
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 52 下一页
摘要: 题意:有一堆石子,你每次可以选择相邻(就算两堆石子中间有很多空堆也不算)的两堆石子,使得两堆石子的个数同时$-1$,你在刚开始的时候有一次交换相邻石子的机会,问你最后能否拿走所有石子. 题解:对于第一堆石子和最后一堆石子,它们只能靠第二堆石子和倒数第二堆石子减去才合法,所以我们由第一堆石子不断向右推 阅读全文
posted @ 2021-01-29 01:35 Rayotaku 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一组数,问你最少删去多少数,使得剩下的数,每个数都能整除数组中其它某个数或被数组中其它某个数整除. 题解:我们直接枚举所有因子,$dp[i]$表示$i$在数组中所含的最大因子数(当我们枚举到$i$时),然后用$dp[i]$更新以$i$作为因子的更大的数,注意,更新的时候$dp[j]=max 阅读全文
posted @ 2021-01-29 01:01 Rayotaku 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个矩阵$a$和$b$,你可以对$a$的任意一行或任意一列的所有元素xor$1$任意次,问最终是否能够得到$b$. 题解:由$a\ xor\ b=c$,可得:\(a\ xor \ c=b\),根据线性代数的知识我们只需要判断$c$是否能由零矩阵通过上述变换得来即可.因为$a\ xor\ c 阅读全文
posted @ 2021-01-29 00:48 Rayotaku 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 题意:你的手机有$n$个app,每个app的大小为$a_i$,现在你的手机空间快满了,你需要删掉总共至少$m$体积的app,每个app在你心中的珍惜值是$b_i$,$b_i$的取值为$1$或$2$,现在问你至少删掉体积$m$的app的最小珍惜值是多少,如果不能满足条件,输出$-1$. 题解:因为$b 阅读全文
posted @ 2021-01-29 00:31 Rayotaku 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 题意:有$n$个数,首先任选一个正整数$x$,然后在数组中找到两个和为$x$的数,然后去掉这两个数,$x$更新为两个数中较大的那个.问你最后时候能把所有数都去掉,如果能,输出最初的$x$和每次去除的两个数. 题解:首先现将数组排序,我们每次肯定都是要用数组中当前最大的数和其他数进行组合,这很容易证明 阅读全文
posted @ 2021-01-20 23:27 Rayotaku 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 题意:对于一个数$x$,有函数$f(x)$,如果它是偶数,则$x/=2$,否则$x-=1$,不断重复这个过程,直到$x-1$,我们记$x$到$1$的这个过程为$path(x)$,它表示这个过程中所有$x$的值,现在给你一个数$n$和$k$,要你找出最大的数$x$,并且$x$在$path[1,n]$中 阅读全文
posted @ 2021-01-20 19:06 Rayotaku 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 题意:有三个背包,每个背包里都用一些数字,你可以选择某一个背包的数字$a$,从另外一个背包拿出$b$(拿出之后就没有了),然后将$a$替换为$a-b$,你可以进行任意次这样的操作,使得最后只剩下一个数,问这个数最大能是多少. 题解:我的思路是,先任意选两个背包,假设$x$和$y$,我们假设选$x$中 阅读全文
posted @ 2021-01-19 15:15 Rayotaku 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 题意:有一张有向图,每个点的权值为点$1$到该点的最短距离(每条边的长度为$1$),对于一条路径,这条路径上最多只能有一条边,这条边起点的权值不小于终点,现在要求每个点能到达路径上的点的最小权值. 题解:首先我们先用bfs求出每个点的权值,并且在求的同时用桶将点存起来,方便之后枚举权值的时候用,然后 阅读全文
posted @ 2021-01-19 14:49 Rayotaku 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 题意:给你两个字符串$a$和$b$,找出它们的$lcm$,即构造一个新的字符串$c$,使得$c$可以由$x$个$a$得到,并且可以由$y$个$b$得到,输出$c$,如果$c$不存在,输出$-1$. 题解:我们可以根据$a$和$b$的长度得出$c$的长度$len_c$,而$len_c$一定是$len_ 阅读全文
posted @ 2021-01-17 16:27 Rayotaku 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 题意:有$n$个点,$m$条单向边,保证每条边的起点小于终点,每个点都有权值,找到联通的点的两个点的最大差值. 题解:因为题目说了起点小于终点,所以我们可以反向存边,然后维护连通边的前缀最小值,如果当前点的入度不为$0$,则更新答案. 代码: #include <bits/stdc++.h> #de 阅读全文
posted @ 2021-01-17 15:45 Rayotaku 阅读(107) 评论(0) 推荐(0) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 52 下一页