返回顶部
上一页 1 ··· 42 43 44 45 46 47 48 49 50 ··· 52 下一页
摘要: 题意:给你$n$个顶点和$m$条边,问它们有多少个单环(无杂环),例如图中第二个就是一个杂环. 题解:不难发现,如果某几个点能够构成单环,那么每个点一定只能连两条边.所以我们先构建邻接表,然后从某个数开始跑dfs,如果这一边所有点的度数都为$2$,那么就能构成一个单环. 代码: #include < 阅读全文
posted @ 2020-05-20 17:59 Rayotaku 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个长度为$n$的序列$a$.对它重新排列,使得$a_{i+1}=a_/3$或$a_{i+1}=2*a_$.输出重新排列后的序列. 题解:经典DFS,遍历这个序列,对每个数dfs,每次dfs使$len+1$,当$len=n$时,说明这个序列已经满足条件了,输出并且标记一下,防止还有另外的情 阅读全文
posted @ 2020-05-20 17:37 Rayotaku 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题意:有一个长度为$n$的序列,要求在$[1,10^9]$中找一个$x$,使得序列中恰好$k$个数满足$\le x$.如果找不到$x$,输出$-1$. 题解:先对这个序列排个序,然后首先要注意$k=0$的情况 如果$k=0$并且序列中含有$1$,那么我们无论如何都找不到比$1$小的数,输出$-1$, 阅读全文
posted @ 2020-05-20 17:19 Rayotaku 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题意:给你$n$个数,每次可以使某个数++,--,或使某个数--另一个++,分别消耗$a,r,m$.求使所有数相同最少的消耗. 题解:因为答案不是单调的,所以不能二分,但不难发现,答案只有一个峰,所以我们可以三分高度,然后写个check函数贪心一下即可. 代码: #include <iostream 阅读全文
posted @ 2020-05-20 12:29 Rayotaku 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题意 :有一个长度为$n$的数组,问能否通过多次使某个区间的所有元素变成这个区间的中位数,来使整个数组变成题目所给定的$k$. 题解 :首先这个$k$一定要在数组中存在,然后我们对中位数进行考虑,对于一个长度$ 1$的数组来说,起码要有$2$个$\ge k$的数,才能使得$k$是某个区间的中位数,然 阅读全文
posted @ 2020-05-19 21:49 Rayotaku 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 题意:有$n$个房间,在这些房间中两两连$m$次条边,问除了第一个房间,其他房间走到第一个房间的最短路径,输出这个房间所连的上一个房间,如果走不到,输出$no$. 题解:刚开始我写了一个dfs,结果竟然编译不了~~(段错误)~~,稍加分析了一下,发现样例1中成环了,然后又在纸上画了画,发现可以用bf 阅读全文
posted @ 2020-05-19 21:28 Rayotaku 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 题意:给你四个正整数$A,B,C,D$,且$A\le B\le C \le D$,有$A\le x\le B\le y\le C \le z\le D$,求最多有多少组$(x,y,z)$能构成三角形. 题解:这题数据范围最大是$5*10^5$,所以我们肯定不能枚举$x,y$,但是由于题目限定我们知道 阅读全文
posted @ 2020-05-17 16:41 Rayotaku 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题意:给你两个正整数$N$和$S$,构造一个长度为$N$并且所有元素和为$S$的正整数数组,问是否能找到一个$K (0\le K \le S)$使得这个数组的任意_子数组_的和都不等于$K$或$S-K$,如果存在则输出YES,并且输出这个数组和$K$,不存在则输出$NO$. 题解:这类题写多了其实就 阅读全文
posted @ 2020-05-17 13:58 Rayotaku 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一组人$a$,现在要将这些人进行分组,对于$i$,只有某一组的人数$\ge a_$时,$i$才可以加入这个组,问最多能够有多少组,(不必将所有人都选用). 题解:我们将所有$a_\(相同的用一个桶存一下,然后升序遍历这个桶,假如桶里面的人数\)\ge a_\(,那么它们就能够组成一组,之后 阅读全文
posted @ 2020-05-17 13:32 Rayotaku 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个体积为$T$的背包,有$n$个物品,每个物品的价值和体积都是是$a_$,求放哪几个物品使得总价值最大,输出它们,并且输出价值的最大值. 题解:其实就是一个01背包输出路径的裸题,直接上板子就行了.(一维的背包写法其实还是不太怎么怎么理解,具体的以后再补). 代码: #include < 阅读全文
posted @ 2020-05-17 13:03 Rayotaku 阅读(182) 评论(0) 推荐(0) 编辑
上一页 1 ··· 42 43 44 45 46 47 48 49 50 ··· 52 下一页