竞赛
考级
不是保留2位小数吗?亏我保留2位小数还错了6次
返回目录 > 第一章 > 输入输出 第一篇 第二篇 第三篇
#include <bits/stdc++.h> using namespace std; int main(){ int a,c[100005],d[100005],x=0,l = 0,r = 0; cin>>a; for(int i = 1;i<=a;i++) cin>>c[i]; for(int i = 1;i<=a;i++) cin>>d[i]; sort(c+1,c+1+a); sort(d+1,d+1+a); }
这题怎么那么简单呢?
AI帮忙的地方我都标注了 📌 核心思想:一条路走到黑,走不通就回溯 💡 适用场景:全排列、组合、迷宫、连通块、树/图遍历、回溯类问题(千问AI生成) dfs模版: 总的来说,深搜有3个步骤——进,回,离 进:进入递归 回:回溯 离:离开函数 只要掌握这3点递归dfs不是问题 另外,dfs还有一个很重要的步骤——剪枝 剪枝指的是减去不必要的递归,使代码的时间复杂度更低 例如A7991.迷宫 如果不剪枝,那么代码如下 时间为1ms 击败了30.27%的用户 加上剪枝后代码 用时:1ms 击败了30.33%的用户 你可能会说:“不就0.06%吗,没啥作用” 那是因为这道题测试点太小 我又在团队里创了一个极端101*101的数据,并把时间调的十分苛刻 用时整整差了60ms 现在,你看到剪枝的魅力了吧 作为dfs死磕粉,我觉得剪枝太伟大了,bfs啥也不是
666
有一点怀念
const int maxn = 1001; int a[maxn]; #define N1001 int a[N]
会字符串的用字符数组,不会就用while提取数字输出。
有点太多了。 堆不下了。喵。 我们来讲讲快速幂。 链接描述 事情是这样的: 给出 a b p 需要你求出 a^b % p的数值。 做法是这样的: 已知: 3^50 = 3^32 * 3^16 * 3^2 将50(b)分解成 3 的幂次。 即可。 实现: 今天上午考试去了。 拉完了。 为什么我T1爆零? T1: 链接描述 镜面质数 这题纯sb。 空间卡的很严很。非常不通人性。 我就是空间开大了。 爆零了。 真服了。 就这么对我啊。 以后现在平台上过一次。 T2: 链接描述 这道题还挺难的。 大概是黄题吧。 是 双指针 + STL 的结合体。 T4:一直在你身旁 下位紫 这道题用的是一个区间DP+单调队列优化 dp[i][j]=min(dp[i][j],max(dp[i][k],dp[k+1][j])+a[k]); 如果说,不对其进行优化,那么时间复杂度是在O(n^3)级别。有85分。 我们的目标是将其时间复杂度降低到O(n^2)级别,获得100分。 那么如何对其进行优化呢? 是这样的,区间DP有一个基础的框架,外面的两层一般是舍不掉的。 那么能够优化的,就是最后的那一层O(n)级别的。 如何优化? 根据观察可以发现:dp[i][k] 和 a[k] 会随着时间的推移逐步递增。 而每一次选择,我们都是在dp[i][k]和dp[k+1][j]中选择一个更大的去与dp[i][j]进行比较。 那么不难得出,每一次循环,都会有一个中位值mid。使得dp[i][mid-1]<dp[mid][j] 并且 dp[i][mid]>=dp[mid+1][j]的。 而所有会被选择的dp[i(固定)][k(>mid)]中,最小的就是dp[i][mid]。
数据过水了吧,就一个,还是样例!
1.30m都没过
样例全是十进制!太水了!!
我不行了,燃尽了......
请大家在讨论区里面说一说吧。
常见例题 A2479.可莉的蹦蹦炸弹 A336.前缀和 A335.前缀和2 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 一维前缀和 这是新手经常干的事 时间复杂度O(N²) 遇到0<N<100000000 就原地升天! 前缀和的精华在于—— “提前准备” 时间复杂度O(N); 哪有人会说了:“A336.前缀和不是左右击击吗?” 掐头去尾 但上一个I得从一开始
我不玩!
模板!供学习参考,会更!(我自己都不信) ( ̄︶ ̄)↗ 出发!
寒假,致力把CSP-J的真题刷完。 每道题都会写题解。 从简单到难。 P5660 [CSP-J 2019] 数字游戏 题目大意:问一串字符串中字符一的个数 使用知识点:字符串的输入和遍历 注意点:是字符串,不要int类型输入啊。 代码: 难度评价:入门中的入门 P5681 [CSP-J 2019 江西] 面积 题目大意:问aa 和 bc 谁更大 使用知识点:int的范围 字符串输出 if else 注意点:19∗191^9 * 1^919∗19超出了 int 的范围 请使用 long long 代码: 难度评价:在人门中需要一点心眼,但不多 题目拓展: 这个题目,但拉出来简单,却会成为在难题中隐藏的小炸弹。 “不开long long 见祖宗”,想必各位都并不陌生。 所以在对题目进行检查的时候/做题的时候,切记要注意是否算出的答案会爆int。 (我的建议是最好直接用typedef 开,因为很多是你意想不到的:比如说折半搜索的答案最后往往是要爆的) P7071 [CSP-J 2020] 优秀的拆分 题目大意:对于数字n,询问其是否能分解为若干个不同的2的正整数次幂。 题目思路:对于“2的次幂”,需要有一定的敏感度,联想到二进制。 代码: 难度评价:入门中的战斗机,似乎有点普及-的影子。 题目拓展:可以去用“&"判断两者之间是否互相包含。对二进制要有一定敏感度。 P8813 [CSP-J 2022] 乘方
共7869条