![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技巧与思维
文章平均质量分 71
鬼沐冢
总会突然想起喵喵
展开
-
CodeForces - 916B(思维+位运算)
链接:CodeForces - 916B题意:B. Jamie and Binary Sequence (changed after round)time limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutp原创 2018-01-20 10:45:18 · 1082 阅读 · 0 评论 -
CodeForces-967C(二分查找最近值)
链接:CodeForces-967C题意:n*m的楼房,cl个楼梯,ce个电梯,除了电梯的最大速度是v外,其他速度都是1。给出q次询问,回答(x1, y1)到(x2, y2),最少需要多少时间?题解:同层直接求距离,不同层二分查找最近的楼梯与电梯,选最快的。#include <bits/stdc++.h>using namespace std;const double EPS =...原创 2018-04-30 10:25:33 · 436 阅读 · 0 评论 -
CodeForces - 913C(贪心)
链接:CodeForces - 913C题意:n种饮料,每种饮料的体积是2^(n-1),给出每种每瓶的花费,求不小饮料体积不小于L的最小花费题解:先求出每一种饮料的性价比。如果有饮料可以一瓶满足当前所求值就与ans进行比较选取,再从前面一瓶不够的饮料中选取性价比最高的购买。#include using namespace std;const long long INF = (1L原创 2018-01-25 17:08:57 · 396 阅读 · 0 评论 -
CodeForces - 808D(STL+思维)
题目链接:CodeForces - 808D题意:给一个长度为n的正整数序列,要求最多移动移动数使得数列可以分为相等的两个部分(前面的和与后面的和 相等),注意不是交换两个数,而是移动一个数,其它数的相对顺序保持不变。题解:因为要求前面的和与后面的和,那么用前缀和数组记录前缀和,用的时候作一个减法就能很快的求出两部分的 和。要满足题目要求,没移动原创 2017-08-04 19:56:41 · 430 阅读 · 0 评论 -
CodeForces - 816B(区间计数)
题目链接:CodeForces - 816B题意:给出n个区间和一个k值,再给出q次询问,每次询问给出一个区间,要求这个区间中的数在开始的n区间中出现次数不少于k次的数目。解法:将n个区间的每个数每出现一次就加一,最后统计q询问的区间中不小于k的数的个数。写这题主要是想讲一个常用的区间更新的方法,其实这题也可以用线段数或树状数组写,但在这里就不讲了。 操作原创 2017-08-04 12:08:29 · 619 阅读 · 0 评论 -
HDU - 1540(STL)
题目链接:HDU - 1540题意:给出数字1~n和三种操作 操作D:删除一个数(但是那个位置依然空在那)。 操作Q:询问一个数,回答包括这个数在内的连续区间的长度。(若那个数被删,返回0) 操作R:重建最后被删除的数。题解:对于询问Q,如果我们每次都遍历1~n寻找连续区间的长度,肯定是要超时的。这题可以用线段树维护求解。但我原创 2017-08-17 08:44:20 · 251 阅读 · 0 评论 -
CodeForces - 673B(思维)
题目链接:CodeForces - 673B题意:数字1~n表示一堆题目,数字越大,题目越难。将题目分组,一组的任何题目都要比二组难。给出类型相似的题目,一个组中不能出现类型相似的题目。相似关系并不传递。解法:每次给出两个类似的,大的一定进入dev1,小的一定进入dev2。每次记录dev1的最小值k1,dev2的最大值k2,这是分界点,比k1大的一定在dev1,比k2小的一原创 2017-08-02 13:55:22 · 615 阅读 · 2 评论 -
CodeForces - 750C(思维)
题目链接:题意:Codeforces里分两个等级,分数在1900及其以上是dev1,在1899及其以下是dev2,分数可以是负的。给出最近几场比赛的数据,求可能的最大分数。给出n对数据c和d。d是指在在参加这场比赛之前的等级,c是指这场比赛结束后变化的分数。题解:经过思考过后你会发现,最后一个c是无所谓的,因为它没给出变化后的等级。所以我们将数据错一分开,如:c原创 2017-08-24 09:43:09 · 550 阅读 · 0 评论 -
CodeForces - 814B(思维)
题目链接:CodeForces - 814B题意:有两个序列,本来应该是1~n,但是都有一个数据错了,要求可能的原来序列。题解:因为两个序列a,b都是只有一个错误,那么改变其中一个序列,就可以改回原来的序列。将b中与a不相同的数全部放入一个数组c中(注意c中只可能有一个或两个元素),将其它相同的数放入map中,以便于随时判断存在。如果c中只有一个元素的那么遍历一遍b数组,找原创 2017-08-24 19:13:43 · 311 阅读 · 0 评论 -
Wannafly挑战赛5 A珂朵莉与宇宙(思维)
题目链接:题目描述星神是来自宇宙的所以珂朵莉也是吧所以我就出了个题给你一个长为n的序列a,有n*(n+1)/2个子区间,问这些子区间里面和为完全平方数的子区间个数输入描述:第一行一个数n第二行n个数表示序列a输出描述:输出一个数表示答案示例1输入60 1 0 9 1 0输出原创 2017-12-08 22:44:30 · 556 阅读 · 0 评论 -
CodeForces - 964D(DFA+贪心)
链接:CodeForces - 964D题意:给出一颗树,每次可以删除任意一个度数为偶数的节点,问是否可以将所有节点删完?题解:每次只能删度数为偶数的节点,故每次只能减少偶数条边,所以只有奇数点的树可以被删完。先用DFS扫一遍,将每个点的子树的节点数处理出来,然后跑DFS,先只跑偶数点的子树个数,跑到底,如果此点不可被删则返回FALSE,否则删除此点继续后继续往下跑。#include <bi...原创 2018-04-28 20:58:44 · 314 阅读 · 0 评论