序列套题
A
给你一个长度为n的序列,你需要维护以下两种操作:
-
给出l,r,x,将区间[l.r]内的数乘上x.
-
给出l,r,求区间[l,r]选两个或两个以上不重复数所能组出的最大公因数.
对于操作二,形式的说:
对于al,al+1,……,ar , 选出p1,p2,……pk, 使得2<=k<=(r-l+1), l<=pi<=r(1<=i<=k),api ≠ apj, 且gcd(ap1,ap2,……,apk)最大
数据保证对于操作二,必有l<r.
B
你有一个长度为n的序列
现在有m个询问,每次询问给出l,r,x,请你求出在区间[l,r]中取出两个或两个以上的数相加之后膜x后的最大值
形式的说:
对于al,al+1,……,ar , 选出p1,p2,……pk, 使得2<=k<=(r-l+1), l<=pi<=r(1<=i<=k),api ≠ apj, 且Σapi % x最大
数据保证对于每次询问,必有l<r.
数据范围(两题同)
1<=n<=1e5,1<=m<=1e5,1<=ai<=1e7
Y某的鸡油时间
1.今日份鸡油(此题数据跟std施工完毕)
时间限制
1.00s
内存限制
125.00MB
题目背景
严某计划今天出门吃炸鸡。
用餐完毕后,满脑鸡油的他突然想到一个问题,现在他让你帮他解决。
题目描述
严某给了你一棵以1为根,一共有n个结点的树,其中每个节点x均有一个鸡油值ax。
如果存在一个二元组(i , j)满足:
1. i是j的某一个祖先
2. i的鸡油值大于j的鸡油值
那这个二元组就会让严某快乐值+1
现在严某把这棵树给你,请帮严某算算他的快乐值总和一共是多少。
输入格式
第一行一个整数n,表示这棵树的总结点数.
第二行n个整数a1,a2,……,an 表示每个结点的鸡油值.
接下来n-1行,每行两个整数u,v,表示有一条边连接结点u和结点v.
输出格式
一个整数,表示严某的快乐值总和
Input
Input1:
10
29166 19513 22794 14128 18400 10645 18838 22756 24825 23275
2 1
3 2
1 4
5 1
6 3
2 7
1 8
9 6
10 3
Output
Output1:
12
数据范围
对于100%的数据,有
1<=n<=1e5,1<=ai<=1e15
2.Y某爱树树
时间限制
2.50s
内存限制
512.00MB
题目描述
yzh
去吃炸鸡时点了个麦香鸡腿卷。
满脑鸡油的他想到了一道题,他十分喜欢树,于是现在他让你解决一道关于树的水题。
yzh
给了你一棵n
个结点的树,这棵树以1
为根,每个树结点上都有一个鸡油值ai。
定义二元组(i,j)
是快乐的当且仅当这个二元组满足:
1.i
是j
的祖先。
2.ai>aj
yzh
觉得只让你求有多少个快乐的二元组太简单了,于是他给出了m
个询问。
对于第i
个询问给出xi,yi,你要做的是回答yzh
:如果将节点xi的鸡油值改成yi,那此时整棵树上一共有多少个二元组是快乐的
“当前询问的修改会在当前输出完答案后撤销”,yzh
为了让你也一起快乐于是补充道。
输入格式
第一行两个整数n,m,表示这棵满是鸡油的新树的结点数和操作个数
第二行n个整数,表示每个结点的鸡油值
接下来n-1行,每行两个整数u,v表示一条连接u,v的边
再接下来m行,每行给出两个整数x,y,其含义见题面
输出格式
一共m行,每行1个整数表示此时快乐的二元组的个数
Input
暂无
Output
暂无
数据范围
对于100%的数据,有
1<=n<=1e5 , 1<=m<=1e4 ,
1<=x<=n , 1<=ai,y<=1e9
3.Y某爱数数(此题数据跟std施工完毕)
时间限制
1.00s
内存限制
256.00MB
输入文件
suprme_chicken.in
输出文件
suprme_chicken.out
题目描述
自从上次 Y某爱树树
一题被 Stm
暴切后,yzh
一直闷闷不乐,他觉得这题还是太简单了!
于是他把询问改成了两种新的操作:
1.给出x,y,表示yzh
觉得结点x的鸡油值不够好看,于是决定把x的鸡油值改成y
2.给出x,表示yzh
想知道现在以x为根的子树有多少个结点鸡油值比x的鸡油值小或者等于x的鸡油值
Stm
在 1e-9
s的时间内就秒了这道题,但他决定考考你。
输入格式
第一行两个整数n,m,表示这棵满是鸡油的新树的结点数和操作个数
第二行n个整数,表示每个结点的鸡油值
接下来n-1行,每行两个整数u,v表示一条连接u,v的边
再接下来m行,每行给出三个整数opt,x,y或者两个整数opt,x,其含义见题面
输出格式
一共若干行,每行一个整数回答操作2的要求
Input
Input1:
10 10
9562 17021 1068 3400 31530 31446 12555 31539 28949 590
2 1
3 1
4 3
5 1
3 6
3 7
8 3
1 9
2 10
1 2 11231
2 6
2 1
2 7
1 2 14001
1 3 9038
2 6
2 5
1 10 11620
2 5
Output
Output1:
1
4
1
1
1
1
数据范围
对于100%的数据,有
1<=n<=1e5 , 1<=m<=1e4 ,
1<=x<=n , 1<=ai,y<=1e9
4.Y某爱书书
时间限制
1.50s
内存限制
512.00MB
题目描述
Y某爱数数
又被暴切了,yzh
感到很失落。
想到很快要月考了,于是他放下了炸鸡准备看一会书
他的书很厚很厚,具体的第i本书有 hi cm厚,神奇的是,如果hi = hj那就可以认为第i本书跟第j本书是同一种书
现在这些书被yzh
排成了一排,面对此起彼伏的书,郁闷的yzh
嫌它们太不美观了
定义一组书(p1,p2,……pk)是不美观的当且仅当p1<p2<……<pk且hp1<hp2<……<hpk,其中k
由yzh
给出
他想问有一共有几组书是不美观的
他现在很烦,于是他把这个问题交给你
输入格式
第一行两个整数n,k,表示书的本数和一组不美观的书的长度
第二行n个整数,表示每本书的厚度hi
输出格式
一共一个整数,即不美观的书的组数
Input
Input1:
4 3
2 1 3 4
Input2:
5 3
1 2 2 3 4
Output
Output1:
2
Output2:
7
数据范围
对于100%的数据,有
1<=n<=1e5 , 1<=k<=1e5 , 1<=hi<=1e9
保证n*k<=1e6
Y某的休闲时间
1.Y某的困惑
时间限制
1.00s
内存限制
256.00MB
题目描述
yzh
想要放松一下,于是yzh
正在考虑今天吃哪些炸鸡
现在一共有n种不同的炸鸡可供yzh
选择,其中第i种会给yzh
带来ai的鸡油值
由于yzh
昨天吃炸鸡上头了,因此今天他只准备吃一部分的炸鸡,使得总鸡油值恰好等于m
老板Stm
十分了解yzh
的胃口,于是他会保证yzh
选的每一块炸鸡都是不一样的,尽管它们其中一些的鸡油值相等
现在yzh
问你一共有多少种买炸鸡的方案
炸鸡店里的炸鸡还有很多,所以不必担心某一种炸鸡卖光的问题
买炸鸡会花钱,但yzh
带了足够多的钱,因此不必担心费用问题
输入格式
第一行两个整数n,m,表示炸鸡的种数和yzh预计的总鸡油值
第二行n个整数,第i个整数ai表示一块这种炸鸡的鸡油值为ai
输出格式
一共一个整数,yzh可以选择的总方案数
Input
Input1:
2 3
1 2
Output
Output1:
3
样例解释
3种方案分别是(1,1,1),(1,2),(2,1)
数据范围
对于10%的数据,有
1<=n<=2,1<=m<=10,1<=ai<=3
对于50%的数据,有
1<=n<=30,1<=m<=1e3,1<=ai<=50
对于70%的数据,有
1<=n<=50,1<=m<=1e7,1<=ai<=100
对于100%的数据,有
1<=n<=100 , 1<=m<=1e16 , 1<=ai<=100,保证同一组数据中没有两个ai是相同的
2.Y某の水题
时间限制
1.00s
内存限制
256.00MB
题目描述
yzh
写题面写腻了,所以这题他准备水一下背景
yzh
给你一棵树,其中每条边有一个长度
他将其中m
个点标记为关键点
现在他想知道第二大的关键点对长度
输入格式
第一行两个整数n,m,表示总结点数以及关键结点数
第二行m个整数,第i个整数ai表示结点ai为关键结点
接下来n-1行,每行两个整数u,v,w,表示一条连接u,v的边长度为w
输出格式
一共一个整数,这棵树上第二大的关键点对长度
Input
Input1:
3 2
1 2
1 2 3
2 3 2
Output
Output1:
0
样例解释
没有第二大的关键点对
数据范围
对于100%的数据,有
1<=n<=1e5 , 1<=m<=n , 1<=ai<=n,保证同一组数据中没有两个ai是相同的
最终答案不会超过long long类型