题目链接:poj 3237 Tree题目大意:给定一棵树,三种操作:CHANGE i v:将i节点权值变为vNEGATE a b:将ab路径上全部节点的权值变为相反数QUERY a b:查询ab路径上节点权值的最大值。解题思路:树链剖分。然后用线段树维护节点权值,成端更新查询。#include #i...
分类:
其他好文 时间:
2015-07-11 14:58:45
阅读次数:
89
Javascript中的运算符可以是四则运算符、关系运算符、位运算符、逻辑运算符、复合运算符。下表将这些运算符从高优先级到低优先级排列:括号(x) [x]中括号只用于指明数组的下标求反、自加、自减-x返回 x 的相反数!x返回与 x (布尔值)相反的布尔值x++x 值加 1,但仍返回原来的 x 值x...
分类:
编程语言 时间:
2015-06-30 12:12:54
阅读次数:
150
题意:
给出一颗边上有权的树和三种操作;
QUERY x y:查询x节点到y节点上的最大权值;
CHANGE x y:将编号为x的边权值改为y;
NEGATE x y:将节点x与节点y之间的路上所有边的权值取相反数数;
节点数n
题解:
显然是树链剖分的算法,但是这里的权值在边上不太方便;
所以就将边的权赋在这条边所连的较深点上(就是儿子节点啦);
根节点的值没有意义;
...
分类:
其他好文 时间:
2015-05-28 09:42:59
阅读次数:
135
题意:有n个数字围成一个圈,然后从圆圈拿走连续的一些数,问拿走的数的和的最大值是多少。
题解:普通最大连续和的做法,如果前面累加的数加当前数是大于最大值就更新最大值,如果小于0就把累加值清零,这个是有环的,那么可以从两种情况考虑,一种是普通的最大连续和找到的最大值,另一种就是头尾拼接的,把所有数取相反数,然后找到最大连续和,那么用总和sum加这个数就是头尾拼接的最大值,取两种情况较大的就是解。
...
分类:
其他好文 时间:
2015-04-16 01:31:42
阅读次数:
134
这是我搞ACM这半年来做过最恶心的一题之一
这题思路其实很简单,只需注意要用优先队列和记录路径即可;
然后说说这题恶心的地方
首先是这坑爹的输出,简直了.然后注意第一个点和最后一个点也有可能发生战斗;
最后就是记录路径的方法,我是在结构体里定义数组然后传递下去(开始我把需要战斗的点用坐标的相反数表示结果和(0,0)产生了逻辑矛盾,之后我把需要战斗的点在记录坐标时候+200才解决);其实记录...
分类:
其他好文 时间:
2015-04-03 09:30:15
阅读次数:
106
解题思路:
二分图带权匹配,卡费用流,用KM算法。
#include
#include
#include
#include
using namespace std;
/* KM算法
* 复杂度O(nx*nx*ny)
* 求最大权匹配
* 若求最小权匹配,可将权值取相反数,结果取相反数
* 点的编号从0开始
*/
const int MAXN = 310;
co...
分类:
编程语言 时间:
2015-04-02 13:31:00
阅读次数:
188
三种方法 第一种不断除2 除2可以用右移方式,但这种方式对于负数的话容易造成左边全为1,进入死循环 可以判断如果输入负数的话,取他的相反数,也就是取绝对值 第二种方法不断乘2,然后用n与该乘2的数做与,如果不为零,则说明该位有一个1 但这种方式这个不断乘2的数字要乘到溢出才完,可以设定while循环...
分类:
其他好文 时间:
2015-03-31 17:18:40
阅读次数:
114
问题描述问题描述试题编号:201403-1试题名称:相反数时间限制:1.0s内存限制:256.0MB问题描述:问题描述 有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。输入格式 第一行包含一个正整数 N。(1 ≤ N ≤ 500)。 第二行...
分类:
其他好文 时间:
2015-03-28 20:07:32
阅读次数:
140
相反数时间限制:1.0s内存限制:256.0MB问题描述 有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。输入格式 第一行包含一个正整数 N。(1 ≤ N ≤ 500)。 第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过100...
分类:
其他好文 时间:
2015-03-21 18:21:18
阅读次数:
219
程序=数据结构+算法数据结构:数组(array),栈(stack),队列(queue),链表(linkedlist),树(tree),图(graph),堆(heap)和哈希表(hash)不同的结构对应于不同的算法,有的考虑节省空间,有的考虑速度,提高运行速度往往是以牺牲空间为代价,与之相反。1、数组集合数组是一串..
分类:
编程语言 时间:
2015-03-13 02:04:51
阅读次数:
186