【问题描述】 求一颗带边权的树的一条最大Xor路径的值。 【输入格式】 第一行,一个整数N,表示一颗树有N个节点,接下来N-1行,每行三个整数a b c表示节点a和节点b之间有条权值为c的边。 【输出格式】 输出仅一行,即所求的最大值。 【输入样例】 4 1 2 3 1 3 4 1 4 7 【输出样例】 7 【数据范围】 对于100%的数据:1≤N≤100000,c≤2^31-1 Xor有一个重要

【问题描述】 给你一块R*C的蛋糕,蛋糕上每一格都有巧克力,现在要横着切A-1刀然后对每个切下来的横条纵着切B-1刀,现在要求巧克力最少的那块蛋糕的巧克力数最多,求这个最多的巧克力数。 【输入格式】 第一行四个整数R C A B 接下来R行,每行C个数,描述每个格子上的巧克力数。 【输入样例】 5 4 4 2 1 2 21 3 1 1 1 2 0 1 3 1 1 1 1 1 1 1 1 【输出样例

【问题描述】 给出n个数。请找出一个排列使得相邻两个数的差的绝对值的和最大。 请求出这个最大值。 【输入格式】 第一行一个整数T代表数据组数。 接下来T行,每行一个整数n表示数组大小,紧接着再给出n个整数值。 【输出格式】 对应T组数据输出T行,第i行格式如下: Case : Si 其中Si表示答案。 输出格式见样例。 【输入样例】 3 4 4 2 15 4 1 1 1 1 2 10 1 【输出样

【题目描述】 给你一堆边,其中有些边为黑色,有些边为白色,每条边有一条边权。 这些边一定能构造成一颗树,请问其中恰好选K条白边的最小生成树的权值和是多少? 【输入格式】 第一行三个整数n m k表示点数,边数,以及K 接下来m行每行四个整数u v w c表示u到c有一条权值为w颜色为c(0为白色1为黑色)的边(双向边) 【输出格式】 一行一个整数,表示恰好选K条边的最小的权值和 【输入样例】 2

【题目描述】 给定一个A*B的矩阵,其中的数有4种 0:表示空地 1:表示障碍物 2:表示箱子 3:表示按钮 4:表示人所在的位置 现在要你求出人(保证只有一个)将所有箱子推到按钮上所需的最小步数,其中箱子不超过3个,保证矩阵周围一圈都是1. 【输入格式】 两个数A B 表示有A行B列 接下来一个A*B的矩阵,数之间没有空格 【输出格式】 一行一个数,表示最小步数。 【输入样例】 4 5 1111

【题目描述】 定义一个函数f(x)为x的每个位的阶乘之积,比如154=1!*5!*4! 给出一个x(可含前导0) 请求出一个数位中不含0或1的最大的数a,使得f(a)=f(x) 【输入格式】 第一行一个整数n,表示数的长度。 接下来一个长为n的数,表示所给的x 【输出格式】 一个整数,表示最大的a 【样例输入】 4 1234 【样例输出】 33222 【数据范围】 1≤n≤50 显然可以将阶乘给分

【问题描述】 假设现在离noip还有m天,有n个人要去参赛。 他们每个人都有一个预定的训练量r[i],所以每一天他们都抓紧时间练习。 但是由于条件限制,第i天只有t[i]的时间可以练习。 我们都知道,一个人在开始干活以前总要浪费一些时间做一些杂七杂八的事情。 现在我们假定第i个人每天在训练前浪费时间是固定的,记为d[i]。 这段浪费掉的时间过后,选手会专心致志训练,他们会充分利用剩下的时间。 然而

【问题描述】 一条直线上有n个人在走。 有三个值来描述第i个人的行为:t[i],s[i],f[i],分别表示他出发的时间,他的起点位置和终点位置。假设每个人走的一样快,他们每个单位时间只会朝目的地走一个单位的距离。 当两个人相遇的时候,他们相互之间会打招呼。按照常理,两个人之间最多只会打一次招呼。 请算出每个人在他的旅程中要和多少个人打招呼。 (注:当一个人走完了或者还没开始走,那么那人处于消失状