Codeforces
文章平均质量分 84
AShallWe
MorningStar
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Codeforces Round #312 div 2 C的二叉树实现
感谢波兰的红名大牛Errichto的讲解。 这道题中涉及到了两个操作,一个是加倍,另外一个除2并向下取整。这如果放在一个二叉树上的操作无非就是向上到达其父节点,向下(只能走左孩子)到达其子节点。我直接贴大牛的原话吧 Let's say input is n = 3 and array 2,5,6. Let's think about a binary tree with 7 (原创 2015-07-19 16:45:10 · 529 阅读 · 0 评论 -
Codeforces Round#323 div.2 C
题意; 题目首先假设了给了你一组数字,那么这组数字根据这个规则,得到这样的一张表 现在题目给你了一N*N的数字,这些数字是不规则排列的,现在要求你找到原数组。 思路: 首先找到一个最大的数,然后提取出来,此时这个数一定能够保证是属于数组里面的数,然后这时候提取出来第二大,然后与前面的数进行gcd运算,这时候算出来的值一定不属于集合,然后找到第3大的数,同样与前面的数进行gcd运算,。。原创 2015-10-17 10:55:55 · 381 阅读 · 0 评论 -
Codeforces Round#324 div.2 E
题意: 给你两串数字序列,要求你按照把上面的一串变成下面的一串。转换需要的花费是sigma|i-j|,然后还需要要求你把转化的序列的次数打印出来,并且也要把每次转换对应的点打印出来。 思路: 先记录第一个序列每个元素在第二个应该有的位置需要的花费,即计算每一个|i-j|,对于这个序列需要的花费,即是sigma|i-j|,现在我们做一个操作,对于那些要往后移动的,我们将它的移动花费变成正数,需原创 2015-10-17 09:29:30 · 339 阅读 · 0 评论 -
Codeforces Yandex.Algorithm 2011 Round 1 85D 线段树
此题和POJ2828andPOJ2886其实属于同一类型的题目,也是作为某年的成都赛区的比赛题目。也感谢Acrush的代码让我知道怎么做这题。 首先讲题意: 现在有一个序列,要求你求这个序列下标对5取模余3的所有数字的和(下标从1开始)。有三个操作 add 向这个集合中添加一个数字,并且保证这个数字是没有重复出现过的; del从这个集合中删除掉一个数字,并且保证这个数字是在这个集合中存在的原创 2015-10-04 16:20:08 · 748 阅读 · 0 评论 -
Codeforces Beta Round #19D 线段树
题意: 在一个二维平面内,现在有三个操作 add x y 向这个平面内添加一个点并且保证这个点之前没有被加入 remove x y 从这平面内删除这个点并且保证这个点时存在过的 find x y 找到这个点的右上角离它最近的那个点 思路: 二维转一维,以x轴作为线段树的区间,线段树每个区间保存这个区间最大的y,根节点用set保存有多少个y,因为只有20W个数然而数据大小达到10^9,所原创 2015-10-06 12:29:45 · 458 阅读 · 0 评论 -
Codeforces Round# 324(Div.2)
A. Olesya and Rodion 题意: 给你N位数,然后给一个数字t,问你是否能不能找到这样的一个N位数,使得能被t整除。 思路: 因为数据量在2到10之间,所以分等于10,和不等于10来看。当t=10时,这时候只需要最后一位是0那么就能整除10,不过这要N>1,因为等于1是不可能的。当t code: #include #include using namespace std原创 2015-10-11 14:22:23 · 382 阅读 · 0 评论 -
Codeforces Round#225 div.2E Propagating tree 线段树
题意: 给你一颗树,现在有两个操作: 1 x val:代表着对节点x进行加val,那么他的孩子节点-val,他的孙子节点+val,依次类推 2 x:代表着你要打印这个节点的值。 思路: 线段树区间更新,单点查询。对于每一个节点,都会有一个对应的控制区间,我们首先DFS一把,找到每个点的控制区间,并且DFS的时候顺便把每一个节点处于什么层次顺便一起记下来。对于该题,我们建立两颗线段树,一颗原创 2015-11-28 16:01:23 · 440 阅读 · 0 评论
分享