题目描述 $ZYL$有$N$张牌编号分别为$1,2,...,N$.他把这$N$张牌打乱排成一排,然后他要做一次旋转使得旋转后固定点尽可能多.如果第$i$个位置的牌的编号为$i$,我们就称之为固定点.旋转可以被认为是将其中的一个子段旋转$180$度,这意味着子段的第一张牌和最后一张牌交换位置,以及第二张牌和倒数第二张牌交换位置,等等.写一个程序,找到旋转子段(子段长度可以为$1$). 输入格式 第一行包含一个整数$N$.第二行有$N$个数,第$i$个数表示旋转之前第$i$个位置的牌的编号. 输出格…
题目描述 小$z$热衷于数学.今天数学课的内容是解不等式:$L\leqslant S\times x\leqslant R$.小$z$心想这也太简单了,不禁陷入了深深的思考:假如已知$L,R,S,M$,满足$L\leqslant (S\times x)\mod M\leqslant R$的最小正整数该怎么求呢? 输入格式 第一行包含一个整数$T$,表示数据组数,接下来是$T$行,每行为四个正整数$M,S,L,R$. 输出格式 对于每组数据,输出满足要求的$x$值,若不存在,输出$-1$. 样例…
题目传送门(内部题44) 输入格式 一行四个整数,分别表示$S,T,a,b$. 输出格式 输出最小步数,数据保证有解. 样例 样例输入: 10 28 4 2 样例输出: 数据范围与提示 样例解释: 先使用$1$操作,再使用$2$操作. 数据范围: 对于$30\%$的数据:$T\leqslant {10}^6$另外$30\%$的数据:$a=1$对于所有数据:$1\leqslant S<T\leqslant {10}^{18}$$1\leqslant a\leqslant {10}^{18}$$2\…
题目传送门(内部题147) 输入格式 每个测试点第一行一个正整数$T$,表示该测试点内的数据组数. 接下来$T$行,每行三个非负整数$a,b,c$,含义如题目中所示. 输出格式 对每组数据输出一行一个非负整数表示答案. 样例 样例输入: 51 2 35 0 09 1 15 5 40 6 6 样例输出: 20244 数据范围与提示 样例解释: 第一组数据中,可以装饰出红黄蓝.黄蓝蓝两张桌子: 第二组数据中只有红色的气球,无法装饰任何桌子: 第三组数据中,只能装饰两张桌子,颜色分别为红红黄和红红蓝,…
题目背景 $Maxtir$最喜欢最大值. 题目传送门(内部题128) 输入格式 第$1$行输入四个正整数$n,m,q$. 第$2$至$n+1$行中,第$i+1$行输入魔法晶石$i$的三种属性$(x_i,y_i,p_i)$. 接下来$q$行,每行两个正整数$l_i,r_i$,数据保证$[l_i,r_i]$互不包含. 输出格式 输出一行一个正整数$ans$表示答案. 样例 样例输入: 3 3 21 1 5000000042 2 3333333363 3 11 22 3 样例输出: 数据范围与提示 样…
题目传送门(内部题107) 输入格式 一行五个正整数$x_1,y_1,x_2,y_2,m$ 输出格式 输出一个整数,为所求的答案对$m$取模后的结果. 样例 样例输入: 2 1 5 3 10007 样例输出: 数据范围与提示 对于$20\%$的数据,满足$x_2,y_2,m\leqslant 1,000$. 对于$40\%$的数据,满足$x_2,y_2,m\leqslant 100,000$. 对于$70\%$的数据,满足$x_2,y_2,m\leqslant 10^9$. 对于$100\%$的…
题目传送门(内部题95) 输入格式 第一行三个整数$n,a,b$,第二行$n$个整数$x_1\sim x_n$表示数列. 输出格式 一行一个整数表示答案.无解输出$-1$. 样例 样例输入:2 2 31 2 样例输出: 数据范围与提示 对于$10\%$的数据,$n,a,b,|x_i|\leqslant 1,000$. 对于$30\%$的数据,$n,a,b\leqslant 1,000$. 对于另外$10\%$的数据,$a=1$. 对于另外$10\%$的数据,$a=2,b=3$. 对于$100\%…
题目传送门(内部题86) 输入格式 第一行$n$接下来$n$行,每行四个浮点数,分别表示变换前的坐标和变换后的坐标 输出格式 第一行浮点数$\theta$以弧度制表示第二行浮点数$scale$第三行两个浮点数$d_x,d_y$我们将用$SPJ$以$10^{-3}$的绝对误差来判断变换结果是否正确,建议输出$10$位小数以上. 样例 样例输入1: 50 0 -1 10 1 -2 11 0 -1 21 1 0 02 1 1 0 样例输出1: 1.57079632681-1 1 样例输入2: 50 0…
题目传送门(内部题85) 输入格式 一个正整数$N$. 输出格式 一个数表示答案对$1000000007$取模后的结果 样例 样例输入1: 样例输出1: 样例输入2: 样例输出2: 样例输入3: 样例输出3: 样例输入4: 样例输出4: 数据范围与提示 样例解释: 第一组样例:$\{(2),(2,2),(2,2,3),(2,2,3,3),(2,3),(2,3,2),(2,3,2,3),(2,3,3),(2,3,3,2),(2,6),(2,6,3),(3),(3,2),(3,2,2),(3,2,2…
题目传送门(内部题84) 输入格式 两个整数$B,K$ 输出格式 一个整数表示答案 样例 样例输入: 5 100 样例输出: 数据范围与提示 对于$40\%$的数据,保证答案小于$10^7$对于另$20\%$的数据,保证答案小于$7\times 10^7$对于另$20\%$的数据,$B=2$对于$100\%$的数据,$K\leqslant 10^7,B\leqslant 15$,保证答案小于$10^{18}$ 题解 先说一下考场上的做法. 其实挺暴力的,做一个队列,初始只有$1$,每次从枚举质数…
题目传送门(内部题80) 输入格式 第一行输入一个正整数$n$. 第二行到第$n+1$行每行两个正整数$a_i$和$b_i$表示第$i$个礼物中包含$a_i$个红宝石和$b_i$个绿宝石. 输出格式 输出一个整数表示方案数. 样例 见下发文件 数据范围与提示 对于$20\%$的数据:$n\leqslant 5,000,a_i,b_i\leqslant 1,000,000$ 对于另外$30\%$的数据:$a_i,b_i\leqslant 4,000$ 对于另外$20\%$的数据:$n\leqsla…
题目传送门(内部题68) 输入格式 输入有若干行,每行一个整数$N$,以$0$结束 输出格式 每行一个整数表示方案数,方案不同当且仅当$E$.$F$.$G$的坐标不同 样例 样例输入: 1020100320 样例输出: 087224 数据范围与提示 对于$40\%$的数据,$N\leqslant 10^7$对于另外$10\%$的数据,$N$是质数对于$100\%$的数据,$N\leqslant 10^{14}$不超过$5$组数据 题解 一个正方形有四个角,一个角有两种情况,不妨我们只算一个角的一…
题目描述 $dirty$在一个棋盘上放起了棋子. 棋盘规格为$n\times m$,他希望任意一个$n\times n$的区域内都有$C$个棋子.$dirty$很快就放置好了一个满足条件的棋盘方案,但是他认为这样过于简单了,他希望知道有多少个满足条件的方案. 输入格式 输入三个整数$n,m,C$,含义如题所述. 输出格式 输出一行一个整数,表示答案对$10^9+7$取模的结果. 样例 样例输入: 2 3 1 样例输出: 6 数据范围与提示 对于$20\%$的数据,$n,K\leqslant 4$…
题目描述 在一个大小为$N\times N$的棋盘上,放置了$N$个黑色的棋子.并且,对于棋盘的每一行和每一列,有且只有一个棋子.现在,你的任务是再往棋盘上放置$N$个白色的棋子.显然,白色棋子不能与黑色棋子重合.在此基础上,放置的方式还需要满足:对于棋盘的每一行和每一列,有且只有一个白色棋子.当然,放置的方式有很多种,你只需要输出不同的放置方案数即可. 输入格式 输入文件为$board.in$.第一行包含一个正整数$N$.接下来$N$行,每行$N$个整数用于描述棋盘.$0$表示这个位置是空的,…
题目描述 对于给定正整数$n,m$,我们称正整数$c$为好的,当且仅当存在非负整数$x,y$,使得$n\times x+m\times y=c$. 现在给出多组数据,对于每组数据,给定$n,m,q$,求$[1,q]$内有多少个正整数不是好的. 输入格式 第一行,一个整数$T$表示数据组数.接下来每行三个数,分别表示$n,m,q$,即一组询问. 输出格式 对于每组数据,输出一行表示答案. 样例 样例输入: 278 100 470 3 34 样例输出: 423 数据范围与提示 对于$30\%$的数据…
题目传送门(内部题63) 输入格式 第一行有一个整数$id$,表示测试点编号.第一行有一个整数$q$,表示询问组数.然后有$q$行,每行有两个整数$n_i,m_i$. 输出格式 一共有$q$行,每行一个整数表示每组询问的答案$S_{n_i,m_i}$对$10^9+7$取模的结果. 样例 样例输入: 151 12 13 24 35 5 样例输出: 2371532 数据范围与提示 对于所有数据,$1\leqslant q,n_i,m_i\leqslant 10^5$. 题解 考场上把$80$分部分分…
题目描述 很简单,给出正整数$n$,求出$n!$在十进制表示下的从最末非零位开始的总共$k$位. 输入格式 第一行一个正整数$T$,表示有$T$组数据接下来$T$行,每行两个正整数$n$和$k$. 输出格式 每组测试数据,按照高位到低位的顺序输出,共$k$位,包含前导$0$(若高位不足,用前导$0$补足). 样例 样例输入: 31 15 110 2 样例输出: 1288 数据范围与提示 对于$20\%$的数据,$n\leqslant 100,k=1,2,3$分别占$10\%,5\%,5\%$对于…
题目描述 有一个$n\times n$的网格,在每个格子上堆叠了一些边长为$1$的立方体. 现在给出这个三维几何体的正视图和左视图,求有多少种与之符合的堆叠立方体的方案.两种方案被认为是不同的,当且仅当某个格子上立方体的数量不同. 输出答案对$10^9+7$取模的结果. 输入格式 从文件$silhouette.in$中读入数据. 第一行一个整数$n$. 第二行$n$个整数,第$i$个表示正视图中从左到右第$i$个位置的高度$A_i$. 第三行$n$个整数,第$i$个表示左视图中从左到右第$i$个…
题目描述 给定$m$个不同的正整数$a_1,a_2,...,a_m$,请对$0$到$m$每一个$k$计算,在区间$[1,n]$里有多少正整数是$a$中恰好$k$个数的约数. 输入格式 第一行包含两个正整数$n,m$,分别表示区间范围以及$a$数组的大小. 第二行包含$m$个不同的正整数$a_1,a_2,...,a_m$,表示$a$数组. 输出格式 输出$m+1$行,每行一个整数,其中第$i$行输出$k=i$的答案. 样例 样例输入1: 10 34 6 7 样例输出1: 4411 样例输入2: 5…
题目描述 有一棵$n$个点的以$1$为根的树,以及$n$个整数变量$x_i$.树上$i$的父亲是$f_i$,每条边$(i,f_i)$有一个权值$w_i$,表示一个方程$x_i+x_{f_i}=w_i$,这$n−1$个方程构成了一个方程组.现在给出$q$个操作,有两种类型:$\bullet 1\ u\ v\ s$,表示询问加上$x_u+x_v=s$这个方程后,整个方程组的解的情况.具体来说,如果方程有唯一解,输出此时$x_1$的值:如果有无限多个解,输出$inf$:如果无解,输出$none$.注意…
题目传送门(内部题11) 输入格式 第一行,三个整数$T,K,M$,分别代表数据组数.良好标准和整数范围.接下来$T$行,每行一个整数$n_i$,代表一个询问. 输出格式 输出$T$行,在第$i$行对于询问$i$输出一个整数,代表第$n_i$个良好的整数.保证答案一定不超过给定的$M$. 样例 样例输入1: 1 0 2333310 样例输出1: 样例输入2: 3 5 99824435328165233 样例输出2: 42936063360 数据范围与提示 样例1解释: 前$10$个优秀的整数是$…
题目背景 $\frac{1}{4}$遇到了一道水题,叒完全不会做,于是去请教小$D$.小$D$都没看就切掉了这题,嘲讽了$\frac{1}{4}$一番就离开了.于是,$\frac{1}{4}$只好来问你,这道题是这样的: 题目描述 给定一个长度为$n$的正整数序列$\{a_i\}$.将$\{1,2,...,n\}$划分成两个非空集合$S$.$T$,使得$gcd(\prod_{i\in S}a_i,\prod_{i\in T}a_i)=1$.求划分方案数,对$10^9+7$取模. 输入格式 从文件…
题目传送门(内部题58) 输入格式 第一行一个数$T$表示数据组数.接下来每行两个数$n$和$m$. 输出格式 $T$行,每行一个答案,对${10}^9+7$取模. 样例 样例输入: 25 66 5 样例输出: 19201620 数据范围与提示 对于$10\%$的数据,保证$n,m\leqslant 5$.对于$30\%$的数据,保证$n,m\leqslant 20$.对于$50\%$的数据,保证$n,m\leqslant 500$.对于$70\%$的数据,保证$n,m\leqslant 100…
题目描述 一年一度的运动会开始了.有$N$个选手参赛,第$i$个选手有一个能力值(保证$A[i]$两两不同),比赛一共进行了天.在第$j$天($0\leqslant j\leqslant 2^{m-1}$)的比赛中,第$i$个选手的得分为$A[i]\ xor\ j$,然后从大到小排名,排名为$x$($x$从$0$开始)的同学会获得的积分,你需要求出每个同学最后总的积分和$q[i]$模${10}^9+7$的结果$p[i]$.为了避免输出文件过大,你只要输出$p[i]$的异或和即可. 输入格式 第一…
题目描述 热爱看书的你有$N$本书,第$i$本书的种类为$A[i]$.你希望每天能够看一本书,但是不希望连续两天看种类相同的书.为了达成这个条件,你需要选择一些书不看,作为一个好学生,你希望不看的书尽可能少,求最少可以有多少书不看. 输入格式 为了避免输入文件过大,我们采取如下方式生成$A[i]$.第一行读入两个个整数$M$,$K$.接下来一行读入$M$个整数$count[i]$,其中$N=\sum count[i]$.接下来一行读入$M$个整数$X[i]$.接下来一行读入$M$个整数$Y[i]…
题目传送门(内部题12) 输入格式 第一行,一个整数$n$,代表树的点数.第二行,$n$个整数,第$i$个整数是$B_i$,描述排列$B$.接下来$n−1$行,每行两个整数$u,v$,描述一条树边$(u,v)$.保证$1\leqslant B_i\leqslant n$,$1\leqslant u\neq v\leqslant n$.保证数据合法. 输出格式 输出一个整数表示答案对${10}^9+7$取模的值. 样例 样例输入1: 52 1 3 5 41 22 32 44 5 样例输出1: 样例…
蝶恋花·春景花褪残红青杏小.燕子飞时,绿水人家绕.枝上柳绵吹又少.天涯何处无芳草!墙里秋千墙外道.墙外行人,墙里佳人笑.笑渐不闻声渐悄.多情却被无情恼.(本词是伤春之作,写春景清新秀丽.同时,景中又有情理,我们仍用何处无芳草(知音)以自慰自勉.苏轼的多情却被无情恼,也不仅仅局限于对佳人的相思.) 题目传送门(内部题28) 输入格式 两个非负整数$A,B$. 输出格式 仅一个正整数,表示答案. 样例 样例输入: 2 3 样例输出: 数据范围与提示 样例解释: $2^3=8$,而$8$的因子有$1,…
题目传送门(内部题25) 输入格式 一行三个整数$n,m,k$. 输出格式 一行一个整数表示答案. 样例 样例输入: 2 2 2 样例输出: 数据范围与提示 样例解释: $f_0=10,f_1=4,f_2=2,f_3=f_4=0$. 数据范围: 对于所有数据,$2\leqslant n,m\leqslant {10}^9,1\leqslant k\leqslant {10}^6$. 题解 考虑$\sum \limits_{i=0}^{nm}i\times f_i$的意义:所有方案中炼字的个数之和…
T1 旋转子段 30% 暴力枚举起点和长度,暴力判断,o(n3)  不知道为什么我拿了40分... 60% 每一个点都有一个固定的旋转中心可以转成固定点,枚举旋转点和长度. 100% 用一个vector存一下以此点为旋转中心,可以将哪些点转成好点,存区间的左右端点(i,a[i]),将区间长度从小到大排序,枚举中间点,再枚举以他为中心可以将哪些点转成固定点,由于按区间长度排序了,所以第几个点+1就是旋转后当前区间有的固定点个数.区间左右的用前缀和计算即可. #include<iostream>…
旋转子段 连60分都没想,考试一直肝t3,t2,没想到t1最简单 我一直以为t1很难,看了题解发现也就那样 题解 性质1 一个包含a[i]旋转区间值域范围最多为min(a[i],i)----max(a[i],i) 感性理解 举个例子,例如3 7 1 4 5 6 2 这个子段包含a[2]的最大为值域范围2----7 具体证明我不会 性质2 翻转后满足固定点对的点满足 a[i]+i==a[j]+j 证明 因为翻转之前a[i]==j&&a[j]==i才满足翻转之后都构成点对 移项得到a[i]+i…