A.小清新图
题意
红冬爆发了经济革命,作为红冬学院的学生会长,环境美化部长,书 记长,整洁部长,体育部长,纠察部长,供餐部长……总之就是红冬 学院不可或缺的存在,切里诺大人准备亲自操办修路工程。
红冬有n个据点,总共会修建m条路,由于红冬人实在是太少了, 一条路要修一年,切里诺想知道最早在哪年末可以让[l,r]中的所有 据点两两可达。 这个问题太难了,所以切里诺来拜托你,如果解决了切里诺会送你一 个威严的胡子。
输入格式
第一行输入三个正整数n,m,q。
接下来m行,第i行输入两个数u,v表示第i年红冬会在据点u和据点v之间修建一条路。
接下来q行,每行输入两个数l,r,表示一次询问。
输出格式
输出一个数,表示每个询问答案的异或和。
题解
求区间[l,r]中所有点连通的最小时间,即求在区间[l,r−1]中的i,使得i和i+1 连通的时间的最小值。可以用 Kruskal(看起来很高级的东西,第一次听说(@_@;))重构树来解决,让i和i+1的LCA的点权代表i和i+1连通的最小时间,最后求一个区间最值。
C.小清新序列
题意
给定n,a,b,c,d。
有长度为n的序列,A,B满足。
求:。
输入格式
第一行输入一个整数T,代表数据组数。
对于每组数据:一行五个正整数,依次为n,a,b,c,d,含义如题面所述。
输出格式
输出T行,每行一个整数,表示每组数据的答案。
题解
1分:a,b=1,输出n。
15分:n<=1e7,枚举每一位。
24分:lcd(c-1,d-1)<=1e7,算出一个循环节中的相同个数(a),枚举不完整循环节的个数(b),输出n/len*a+b;