摘要:
题意:一个小男孩要上楼梯,他一次可以走1个台阶或2个台阶或3个台阶,但是有一些台阶是脏的,他不想走在脏台阶上。一共有n个台阶和m个脏台阶,他最开始在第1个台阶上,要走到第n个台阶。问小男孩能不能不踩到脏台阶的前提下走到n个台阶。 思路:对于给定的m个脏序列,先排序后,没有连续的三个数就行。 1 #i 阅读全文
摘要:
题意:有n个数,这些数的范围是[1,n],并且每个数都是不相同的。你需要构造一个排列,使得这个排列上的数与它所在位置的序号的最大公约数满足 > 1,并且这些数的个数恰好满足k个,输出这样的一个排列。 思路:只需要后k个数与下标一样,前n-k个数逆序输出就复合题意。 1 #include<cstdio 阅读全文
摘要:
枚举长度最短的字符串的所有子串,再与其他串匹配。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostream> 5 #include<cstdlib> 6 #include<string> 7 #i 阅读全文
摘要:
最长回文串模板题 Manacher 算法 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostream> 5 #include<cstdlib> 6 #include<string> 7 #inclu 阅读全文
摘要:
题意: 给你2*n的矩阵 然后定义一个函数f(a,l,r)表示a数组在l到r的或值 然后让你找到一对l,r,使得f(a,l,r)+f(b,l,r)最大 思路: 直接或所有数 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 阅读全文
摘要:
题意: 给你一个n*m一开始全是0的矩阵,然后又q次询问 每次询问给你三个字母 op,a,b 将第a行变成b 将第a列变成b 然后让你输出Q次询问后,这个矩阵长什么模样 思路:每个格子记录两个状态,区分横竖。 1 #include<cstdio> 2 #include<cstring> 3 #inc 阅读全文