SAC E#1 - 一道神题 Sequence1】的更多相关文章

题目背景 小强和阿米巴是好朋友. 题目描述 小强很喜欢数列.有一天,他心血来潮,写下了一个数列. 阿米巴也很喜欢数列.但是他只喜欢其中一种:波动数列. 一个长度为n的波动数列满足对于任何i(1 <= i < n),均有: a[2i-1] <= a[2i] 且 a[2i] >= a[2i+1](若存在) 或者 a[2i-1] >= a[2i] 且 a[2i] <= a[2i+1](若存在) 阿米巴把他的喜好告诉了小强.小强便打算稍作修改,以让这个数列成为波动数列.他想知道…
题目描述 小强很喜欢数列.有一天,他心血来潮,写下了一个数列. 阿米巴也很喜欢数列.但是他只喜欢其中一种:波动数列. 一个长度为n的波动数列满足对于任何i(1 <= i < n),均有: a[2i-1] <= a[2i] 且 a[2i] >= a[2i+1](若存在) 或者 a[2i-1] >= a[2i] 且 a[2i] <= a[2i+1](若存在) 阿米巴把他的喜好告诉了小强.小强便打算稍作修改,以让这个数列成为波动数列.他想知道,能否通过仅修改一个数(或不修改)…
题目大意:给你一串数列,问你能否改变1个数或不改,使它变成波动数列? 一个长度为n的波动数列满足对于任何i(1 <= i < n),均有: a[2i-1] <= a[2i] 且 a[2i] >= a[2i+1](若存在) 或者 a[2i-1] >= a[2i] 且 a[2i] <= a[2i+1](若存在) 解题思路:贪心地扫一遍即可.一共只有两种情况. 我们对于每种队列,记录下它前一个元素和当前元素,如果它不符合当前队列要求,就使计数器加1,并把它改成±∞(改成最大或…
题目背景 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. SOL菌表示不服,立刻就要算这个数在k进制表示下末尾0的个数. 但是SOL菌太菜了于是请你帮忙. 输入输出格式 输入格式: 本题包含多组数据. 每组输入仅包含一行:两个整数n,k. 输出格式: 对于每组输入,输出一个整数:n!在k进制下后缀0的个数. 输入输出样例 输入样例#1: 10 40 输出样例#1: 2 说…
题目传送门:https://www.luogu.org/problemnew/show/P3927 题目大意:给你两个正整数n,k,求n!在k进制下末尾零的数量. 我们通过简单的数学分析,便可以发现,n!可以化为x*k^y(x,y∈N),而末尾零的数量,正是y. 经过进一步化简,$n! = x*\prod_{1}^{d(k)}d_{i}*y_{i}$,其中$d_{i}$为k的素因子,此处d(k)表示k的素因子个数,在已知d的情况下,求$y$并不复杂. 同时,我们也可以将k也化为这个格式,$k =…
Description 他们经常在一起玩一个游戏,不,不是星际争霸,是国际象棋.毒奶色觉得F91是一只鸡.他在一个n×n的棋盘上用黑色的城堡(车).骑士(马).主教(象).皇后(副).国王(帅).士兵(卒)摆了一个阵.然而F91觉得毒奶色是一只鸡.他发起了挑战:他要操纵一个白色骑士,不经过任何一个棋子的攻击范围(F91可以连续行动,而毒奶色的棋子不会动,除非白骑士进入了对方的攻击范围),并击杀毒奶色的国王(即进入黑国王所在的位置).请告诉F91他最少需要多少步骤来完成这一项壮举. 注意: 当F9…
题目背景 小强和阿米巴是好朋友. 题目描述 小强喜欢数列.有一天,他心血来潮,写下了三个长度均为n的数列. 阿米巴也很喜欢数列.但是他只喜欢其中一种,波动数列. 阿米巴把他的喜好告诉了小强.小强便打算找出这三个数列内的最长波动数列. 也就是说,如果我们将三个数列记做a[n][3],他必须要构造一个二元组序列:<p[i], q[i]>,使得对于任何 i>1 有: p[i] > p[i-1] 若q[i] = 0,a[p[i]][q[i]] >= a[p[i-1]][q[i-1]]…
[题目]洛谷10月月赛R1 提高组 [题意]给定n*n棋盘和<=16个棋子,给几个棋子种类和攻击范围,现我方只有一马,求能否吃王. [算法]状压+BFS [题解]16种棋子中,马不能吃马,直接处理马和王,那么就剩13个棋子,可以压成2^13表示棋盘现有棋子存活状态. 然后对vis[2^13][n][n]进行bfs. 细节: 1.攻击直到碰到其它棋子,那个碰到的棋子也算攻击范围内. 2.判断碰到棋子时,注意该棋子是否在当前局面存活. 3.多组数据,Q中途退出要清空. 学到了: 1.一份长代码要细心…
[题目]洛谷10月月赛R1 提高组 [题意]求n!在k进制下末尾0的个数,n<=1e18,k<=1e16. [题解]考虑10进制末尾0要考虑2和5,推广到k进制则将k分解质因数. 每个质因数在n!中的数量,以2为例是n/2+n/4+n/8...这样统计.(含x个就被统计x次) 最后得到凑出的k的个数就可以得到末尾0的个数. 分解质因数复杂度O(√k),也使用pollard rho算法可以加速. #include <iostream> #include <stdlib.h>…
[题目]洛谷10月月赛R1 提高组 [算法]递推DP+树状数组 [题解]列出DP递推方程,然后用树状数组维护前后缀和. #include<cstdio> #include<cstring> #include<cctype> #include<cmath> #include<algorithm> #define lowbit(x) (x&-x) #define ll long long using namespace std; int re…