合集-AcWing赛题
摘要:#排列 生成一种排列,但排列不能升序 不能是升序的原因,因为$a_i≠i$,而序列全是都是唯一值,升序存在一种可能1,2,3,...,n 此时$a_i=i$ 这里提供一种解法 第n位为1,其余为i+1 #include<cstdio> #include<cstring> #include<iostr
阅读全文
摘要:##区间选数 #include<cstdio> #include<cstring> #include<iostream> #include<ctime> #include<cstdlib> using namespace std; int n,k; int t; int main(){ ios::s
阅读全文
摘要:完全平方数 都知道完全平方数的性质 \(n=sqrt(n)*sqrt(n) 且 sqrt(n)为整数\) 验证一下$sqrt(n)$是不是整数即可 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #i
阅读全文
摘要:##统一大小写 按题意 1.统计大小写字母个数 2.按照要求转换为小写或大写,输出 #include<cstdio> #include<cstring> #include<iostream> using namespace std; bool check(char c){//判断大小写 if(c>=
阅读全文
摘要:##青蛙跳 +a的次数=k%2+k/2 -b的次数=k/2 注意数据不要爆范围了 #include<iostream> #include<cstring> #include<cstdio> using namespace std; int t; int k,a,b; int main(){ cin>
阅读全文
摘要:A 将数据存入数组,根据下标取最小值 B 根据题意,相邻的两个都是朋友,给出朋友关系,构造满足所有关系的排列 假如此时 2 3 1 4 5 满足朋友关系,那么5之后的第一个数字一定是4的朋友,以此递推,就可以得到排列 所以现在的问题在于,如何得到这个最初始的排列? 由于数据较小,我们以1为其他4个数
阅读全文
摘要:农夫约翰的奶酪块 抽取一个方块之后,记录对于其所在行,列,竖的数量加+1 如果有行,列,竖的数量达到了n,则说明可以插入一个1*n的块 所以对答案贡献加+1 而我们注意到同一行的,列,竖坐标相同。相同的列,竖以此类推 点击查看代码 #include<bits/stdc++.h> using name
阅读全文
摘要:农夫约翰最喜欢的操作 分几步来: 要满足\(a_i-x\)整除\(x\) 转化一下为,即满足\(a_i \equiv x \pmod M\) ,所以预处理,\(a_i=a_i \mod M\) 由第一步,我们可以知道\(x\in (0,M-1)\) 根据题意我们所求值 \(val=\sum_{i=1
阅读全文
摘要:炮弹 按照题意模拟: 注意两点: 1.死循环,如果存在两个能量为0跳板,就会互相弹跳,停不下来,设置一个合理的循环上限,防止超时 2.时间复杂度:在最坏的情况下 k最开始为1,跳n次,k为2时,跳2/n次..... 所以在最坏的情况下时间复杂度\(O(\sum_{i=1}^{n}\frac{n}{i
阅读全文
摘要:AcWing 5589. 哞语言逻辑 大模拟,思路简单,但是实现时要注意代码写的不要混乱,严格执行思路 and优先级高于or,所以可以讲连着的and分成一块,然后统计0,1的数量前缀和,减少时间复杂度 更多细节:视频题解 代码来源以及注释 点击查看代码 #include<bits/stdc++.h>
阅读全文

浙公网安备 33010602011771号