思维
Lngxling
这个作者很懒,什么都没留下…
展开
-
LeetCode 15. 三数之和 减杂
题目:给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。思路:初始暴力复杂度,且可能有重复。要去重,可以将数组进行排序,使三元组(a,b,c)满足a<=b<=c,即不重复地在同一个位置取相同的数。但复杂度没变。移项可得-a=b+c,也就是说当三元组中的一个数固定时,另外两个数的一个增大,另一个肯定要减小,因此第二和...原创 2021-11-11 13:18:21 · 273 阅读 · 0 评论 -
HDU - 5883 The Best Path —— 思维
题意:能不能经过图上的所有边一次且仅一次,如果可以,每次经历一个节点,将节点的权值异或进答案,问答案的最大值思路:欧拉图,奇度顶点的个数必须是0个或者两个,先判出是否是欧拉图如果有两个奇度顶点,一定是从一个奇度顶点到另一个奇度顶点,答案就是两个奇度顶点与所有偶度顶点的度数除2为奇数的点的权值异或,度数除2即为通过这个点的次数如果没有奇度顶点,可以从任意一个偶度顶点出发,这时这个...原创 2018-08-30 13:17:00 · 161 阅读 · 0 评论 -
HDU - 6016 Count the Sheep —— 思维
题意:问在图中的边上可以找到多少不相同的四个点连起来的路径思路:对于每一条边,左节点外的节点数乘右节点外的节点数就是这条边作为中间线段可以形成的四点路径数#include <bits/stdc++.h>using namespace std;#define ll long longstruct node{ int x,y;};struct node nu...原创 2018-08-30 12:52:53 · 176 阅读 · 0 评论 -
CodeForces - 965C Greedy Arkady
题意:k个人分n个糖果,糖果会按轮发放,每一轮里每个人都会得到x个,再进行下一轮,发完即止,发糖的人每次发的糖果数不能大于m个,并且每个人都至多收到d次,问发糖的人最多收到多少个糖。发糖的人永远是每一轮第一个收到糖果的。思路:最优的情况一定是发糖的人正好收到最后的x个,剩下的人就都比他少一轮枚举一下发糖的轮数,直接按最优情况计算一下能收到的糖的个数,取最大值#include ...原创 2018-08-29 13:36:27 · 193 阅读 · 0 评论 -
HDU - 6228 Tree —— 思维
题意:给一棵树的每个节点染色,有k个颜色可以选,染成相同颜色的节点的路径也会形成一个树,这样每种颜色就都会有一棵树,问这些树的交集最多有多少条边。思路:开始想的时候是从叶子节点一圈一圈向里染,每个节点形成的子树的节点个数如果大于等于k,那这个节点上面的所有节点就都可以算进交集里,但是搜索的时候T了。后来想对于每条边,如果这条边左侧右侧都有大于等于k个节点,那么这条边就一定能被算进交...原创 2018-08-29 11:47:35 · 277 阅读 · 0 评论 -
HDU - 6227 Rabbits —— 思维
题意:给出n个兔子的坐标,处于最左边和最右边的兔子只能隔着一只兔子跳到这只兔子另一则的任意空位,问最多能跳多少次思路:模拟一下就可以知道,中间的空位一定是可以跳到的,最左和最右两个空的段只能跳满其中一个,所以选择一个多的跳代码是加和所有的空格,减去左右两侧较小的空格#include <bits/stdc++.h>using namespace std;int ...原创 2018-08-29 11:27:16 · 199 阅读 · 0 评论 -
CodeForces - 750C New Year and Rating —— 思维
题意:大于等于1900分的是第一梯队,小于等于1899的是第二梯队,给出n次分数的变化和变化前所处的梯队,问是不是合理的,如果是合理的,输出最后最高的可能分数,无限大输出 Infinity思路:分数的变化相当于一个折线图,如果我们把开始点看做0的话,要想让最终结果最大,就需要把折线图上移,最多上移到二梯队的最高点在1899处。如果所有的分数都在一梯队,最高就是无限,如果一梯队的最...原创 2018-08-29 10:49:48 · 206 阅读 · 0 评论 -
HDU - 6020 MG loves apple
MG loves appleTime Limit: 3000/1500 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 1066 Accepted Submission(s): 200 Problem DescriptionMG is a rich boy. ...原创 2018-08-28 13:54:56 · 268 阅读 · 0 评论 -
CodeForces - 742C Arpa's loud Owf and Mehrdad's evil plan
C. Arpa's loud Owf and Mehrdad's evil plantime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputAs you have noticed, there are lovely ...原创 2018-08-28 13:12:28 · 212 阅读 · 0 评论 -
HDU - 5878 I Count Two Three
题意:问大于n且离n最近的,可以写成2^a*3^b*5^c*7^d形式的数思路:预处理出来可以写成这种形式的所有数,因为n最大是1e9,设2^a=1e9,两边同取log,变成alog2=9log10,所以a最大是36,依次计算bcd,然后暴力计算#include <bits/stdc++.h>using namespace std;#define ll long ...原创 2018-08-30 13:36:13 · 165 阅读 · 0 评论 -
ACM-ICPC 2018 南京赛区网络预赛 B. The writing on the wall
题意:方格矩形中不包括一些点,能形成多少个子矩形思路:n*m遍历每个点,维护一下每个点最高可以到达的高度,遍历每行的点的时候,把这个点当做矩形的右下角,看能形成多少个矩形,即从这个点向左,可以到达的最大高度的和#include <bits/stdc++.h>using namespace std;#define ll long long#define max_ ...原创 2018-09-02 17:05:39 · 329 阅读 · 0 评论 -
Gym - 101775K Downgrade
题意:等级由大等级和小等级构成,当小等级达到大等级对应的最大值,再升一级大等级就加1,小等级变为1降级时等级每次变为以大等级作为经验值对应的等级思路:题意比题难系列...维护一下等级的前n项和,就是经验值对应的大等级,模拟一下就可以了当这次和上次所处的大等级一样时,就不用再模拟了,以后都一样用long long#include <iostream>#...原创 2018-09-30 15:14:52 · 591 阅读 · 0 评论 -
Gym - 101775J Straight Master —— 差分数组
题意:问能不能通过操作多次将长度为3~5的区间都加1得到给定的数列思路:利用差分数组的思想,将区间X,Y都加1可以变成在X处加1,在Y+1处减1,这样我们可以通过拿这一项减前一项得到给定数列的差分数组,因为每个区间长度至少要是3,所以在每个大于0的位置,找它加3位置后面是否有足够的负数与其对应,一旦出现有数不能变成0,就肯定不能形成#include <iostream>...原创 2018-09-30 15:07:51 · 442 阅读 · 0 评论 -
Gym - 101775L SOS —— 规律
题意:长度n的棋盘,依次向里面放S或者O,谁下的时候形成了SOS谁就赢Panda先手Sheep后手思路:这题真的蛮有趣所有情况中,只有形成了S - - S这种情况时,不管再向里面填了什么,另一个人都会赢,这是这题的突破口(1)当n小于7的时候,随便模拟一下知道最优情况下都是平局,不会有一个人会让另一个人赢(2)当n为大于7的奇数时,先手必胜以7为例:先手 ...原创 2018-09-30 10:07:08 · 690 阅读 · 0 评论 -
HihoCoder - 1249 Xiongnu's Land —— 差分数组
题意:两个人分一块横坐标0~R,纵坐标无限大的土地,里面有许多矩形形状的绿洲,保证绿洲没有重叠需要选定一个整数横坐标x,满足:1.坐标左侧的绿洲面积大于等于右侧的绿洲面积2.坐标左侧的面积要尽可能大问x是多少思路:要满足第二个条件,只需要从R处向左找第一个满足条件的位置,问题在如何快速求出左右两侧的绿洲面积绿洲都是矩形,假设有一个左上角坐标XY,宽度W高度H的矩形,...原创 2018-09-30 09:06:25 · 269 阅读 · 0 评论 -
CodeForces - 632C The Smallest String Concatenation
题意:将所有的字符串连接使得字典序最小思路:精妙!#include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <map>#include <set>#include <stack>#inc原创 2018-09-30 08:47:23 · 215 阅读 · 0 评论 -
CodeForces - 632B Alice, Bob, Two Teams ——思维
题意:选定字符串的一个前缀或者后缀,将里面的A变为B,B变为A,问所有B下标对应值的和的最大值思路:将区间反转也就是在原本的基础上加A的值,减B的值,从前到后或者从后到前遍历,记录当前这些值和的最大值如果不是选定前缀后缀,而是任意选定一段区间,可以用尺取法选一段区间和的最大值#include <iostream>#include <cstdio>#...原创 2018-09-30 08:45:17 · 343 阅读 · 0 评论 -
CodeForces - 618A Slime Combining
题意:不断地向当前数列的最右侧放1,一旦出现连续的两个数x相等,就合并为x+1,问放n次1最后数列的值思路:因为是两个1合并形成2,所以可以看作二进制的加减,模拟一下就会发现答案就是n的二进制的每个1所在的位置#include <iostream>#include <cstdio>#include <cmath>#include <...原创 2018-10-02 09:46:27 · 299 阅读 · 0 评论 -
CodeForces - 633D Fibonacci-ish —— 斐波那契数列
题意:有1000个数,问能形成的最长斐波那契数列的长度思路:只要确定了数列的前两项,数列就已经确定了,所以可以枚举前两项,来找剩下的最长因为数的绝对值小于1e9,斐波那契数列的增长速度很快,项数很少用map记录了一下每个数出现的个数,方便搜索要特判0的情况,因为0很多,就退化为n^3的复杂度了#include <iostream>#include <...原创 2018-10-02 09:33:15 · 312 阅读 · 0 评论 -
CodeForces - 149B Martian Clock
B. Martian Clocktime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputHaving stayed home alone, Petya decided to watch forbidden film...原创 2018-08-28 12:57:56 · 257 阅读 · 0 评论 -
HDU - 3282 Running Median —— 思维
Running MedianTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1323 Accepted Submission(s): 461 Problem DescriptionFor this problem, yo...原创 2018-08-28 12:49:38 · 274 阅读 · 0 评论 -
HDU - 5875 Function —— 预处理?线段树
FunctionTime Limit: 7000/3500 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 3915 Accepted Submission(s): 1250 Problem DescriptionThe shorter, the simple...原创 2018-08-28 11:46:08 · 185 阅读 · 0 评论 -
POJ - 3666 Making the Grade
Making the GradeTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 8186 Accepted: 3831DescriptionA straight dirt road connects two fields on FJ's farm, b原创 2017-11-15 21:58:29 · 315 阅读 · 0 评论 -
HDU - 1465 不容易系列之一 —— 错排问题
不容易系列之一Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 23073 Accepted Submission(s): 9981Problem Description大家常常感慨,要做好一件事情真的不原创 2017-11-08 21:11:29 · 228 阅读 · 0 评论 -
UVA - 679 Dropping Balls —— 思维
题意:给定一个二叉树,每个节点都是一个开关,把球从根节点放下,每次遇到开关为0就向左子树下落,遇到开关为1就向右子树下落,同时开关的值翻转,直到球落到最底层。问第i个球落到了最底层哪一个节点里。思路:开始时用模拟,果断超时,然后从模拟中找规律。首先,我们可以通过球是通过该节点的第几个球来判断球的去向。比如,第一个到达2节点的球一定向左落,第二个一定向右落。即第奇数个球向左,偶数个球向右原创 2017-10-28 16:56:15 · 187 阅读 · 0 评论 -
HDU - 1257 最少拦截系统
最少拦截系统Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 45909 Accepted Submission(s): 18106Problem Description某国为了防御敌国的导弹袭击,发展出原创 2017-09-29 09:19:21 · 210 阅读 · 0 评论 -
hdu1029 Ignatius and the Princess IV——多数元素
Ignatius and the Princess IVTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32767 K (Java/Others)Total Submission(s): 34766 Accepted Submission(s): 15165Problem Descriptio原创 2017-09-10 11:47:28 · 196 阅读 · 0 评论 -
寻找多数元素
数组中出现最多的元素时间限制: 1000ms 内存限制: 256M描述 给你一个数组,输出里面出现超过1/2的元素。保证有且只有一个解。输入 第一行是一个整数,表示测试数据的组数 n,n < 1000万 之后每一行都是一个整数。输出 输出出现超过1/2的那个数字。样例输入 5 1 1 1 2 3 样例输出 1题意:找出一组书=数种个数超过50%的数啊哈算法最后作者有提到这原创 2017-08-23 20:33:17 · 490 阅读 · 0 评论 -
CodeForces - 750B New Year and North Pole——思维
[CodeForces - 750B New Year and North Pole](http://codeforces.com/problemset/problem/750/B)B. New Year and North Poletime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputou原创 2017-09-07 21:56:06 · 375 阅读 · 0 评论 -
HDU - 1013 Digital Roots —— 树根
Digital RootsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 81138 Accepted Submission(s): 25388Problem DescriptionThe digita原创 2017-09-25 10:32:29 · 277 阅读 · 0 评论 -
CodeForces - 361C Levko and Array Recovery
C. Levko and Array Recoverytime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputLevko loves array a1, a2, ...原创 2017-12-13 19:32:11 · 268 阅读 · 0 评论 -
CodeForces - 362A Two Semiknights Meet
A. Two Semiknights Meettime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputA boy Petya loves chess very much. H原创 2017-12-13 19:47:18 · 239 阅读 · 0 评论 -
HDU - 6438 Buy and Resell
Buy and ResellTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1303 Accepted Submission(s): 427 Problem DescriptionThe Power Cube is us...原创 2018-08-26 21:52:35 · 204 阅读 · 0 评论 -
CodeForces 620C Pearls in a Row
C. Pearls in a Rowtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere are n pearls in a row. Let's enumerate them with integers from 1 to n from...原创 2018-03-19 22:48:59 · 220 阅读 · 0 评论 -
CodeForces - 567D One-Dimensional Battle Ships —— 二分思维
D. One-Dimensional Battle Shipstime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputAlice and Bob love playing o原创 2018-02-05 20:42:07 · 274 阅读 · 0 评论 -
51Nod - 1267 4个数和为0
1267 4个数和为0基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题给出N个整数,你来判断一下是否能够选出4个数,他们的和为0,可以则输出"Yes",否则输出"No"。Input第1行,1个数N,N为数组的长度(4 <= N <= 1000)第2 - N + 1行:A[i](-10^9 O原创 2018-02-05 20:25:06 · 136 阅读 · 0 评论 -
CodeForces - 165C Another Problem on Strings —— 前缀和字串
C. Another Problem on Stringstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputA string is binary, if it con原创 2018-01-23 19:58:09 · 306 阅读 · 0 评论 -
CodeForces - 231B Magic, Wizardry and Wonders
B. Magic, Wizardry and Wonderstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputVasya the Great Magician and原创 2017-11-26 19:26:47 · 325 阅读 · 1 评论 -
CodeForces - 231C To Add or Not to Add
C. To Add or Not to Addtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputA piece of paper contains an array原创 2017-11-26 18:34:29 · 413 阅读 · 0 评论 -
CodeForces - 361B Levko and Permutation
B. Levko and Permutationtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputLevko loves permutations very much.原创 2017-12-13 20:00:20 · 269 阅读 · 0 评论