蓝桥杯
发表于|更新于|算法
|总字数:109|阅读时长:1分钟|浏览量:
精度控制
1 | round(number, ndigits) #舍入的数字,保留的尾数位数 |
字符串操作
1 | a[i].isdigit() |
交集并集
1 | 转化为set |
first step
1 | sys.setrecursionlimit(50000) #设置递归深度 |
常用库
datetime
bisect
re
math
gcd
1 | math.gcd(a,b) #若有负数先取abs() |
四舍五入
1 | round() #奇进偶舍 |
文章作者: Randolf luo
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Randolfluo's blog!
相关推荐

2024-05-15
动态规划
动态规划递归关系 状态表示f[i,j] 集合:从前i个物品选且体积小于j 属性:最大值,最小代价,数量 状态计算——集合划分 01 背包 每件物品可以用一次 不包含第i个物品:f(i - 1, j) 包含第i个物品:f(i - 1,j - vi) + wi 空余一个vi的位置,加上第i个物品的权重 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647#include <algorithm>#include <iostream>using namespace std;const int N = 1010;int n, m;int v[N], w[N]; //体积和价值int f[N][N]; //第一个N表示取第1~n个物品,第二个n表示从1开始到m的容量int main() { cin >> n >> m; for (int i = 1; i <= n; i++) ...

2025-03-25
图论
图的存储搜索与图论 数据结构 空间 DFS stack O(n) BFS queue O(2^n) 最短路 DFS 采用stack 回溯——恢复状态 剪枝——提前回溯 遇到诸如放置、字典序等可使用深搜输出全部组合。 acwing842 12345678910111213141516171819202122232425262728293031323334353637383940#include <iostream>using namespace std;const int N = 100;int n; //记录深度int path[N];int st[N];void dfs(int u) //u控制路径长度和路径索引{ if (u== n) //path形成,输出 { for (int i = 0 ;i < n; i ++) printf("%d", path[i]); ...

2024-07-29
数学知识
数学知识算数基本定理任何大于 1 的整数是质数或独一无二的质数乘积(不理次序)。 任何一个大于1的自然数n都可以表示为素数的乘积形式: [ n = p_1^{e_1} \cdot p_2^{e_2} \cdot \ldots \cdot p_k^{e_k} ]$$。其中,$$(p_1, p_2, \ldots, p_k) $$是素数,$$(e_1, e_2, \ldots, e_k) $$是大于等于1的整数,并且这种分解方式是唯一的。 ### 质数 在大于1的整数中,如果只包含1和本身这两个约数,就被称为质数,或者叫素数。 #### AcWing 866. 试除法判定质数 质数的判定——试除法 O(sqrt(n)) 由于约数是成对出现的,所以n的最大约数只能是$$\sqrt{n}$$ 12345678910111213141516171819202122232425262728293031323334353637#include <iostream>#include <algorithm>const int N =...

2024-07-29
基础算法
算法数据输入>1000000时使用scanf,否则使用cin。 12ios::sync_with_stdio(0);cin.tie(0); //cpp speed up 排序 排序算法 平均时间复杂度 冒泡排序 O(n2) 选择排序 O(n2) 插入排序 O(n2) 希尔排序 O(n1.5) 快速排序 O(N*logN) 归并排序 O(N*logN) 堆排序 O(N*logN) 基数排序 O(d(n+r)) 快速排序——分治 确定分界点 调整区间 递归处理左右两端 12345678910111213141516171819202122232425262728293031323334353637#include <iostream>using namespace std;const int N = 1e6 + 10;int n;int q[N];void quick_sort(int q[], int l, int r){ if(l >= r) return; //int...

2024-07-24
数据结构
[toc] acwing826. 单链表 头插法: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970#include <iostream>#include <cstring>using namespace std;const int N = 100005;int head, e[N], ne[N], idx; //头节点, 值,下一节点,idx索引节点的编号void init(){ head = -1; idx = 0;}void add_to_head(int x ){ e[idx] = x; ne[idx] = head; head = idx; idx ++;}void remove(int pos){ ne[pos] =...

2024-05-15
洛谷题单——图的基本应用
P5318 【深基18.例3】查找文献 这题是分别进行DFS和BFS遍历,要求有多个节点时,按照从小到大进行排序。由于采用的是yxc的链式前向星存储,涉及到多个数组,不知道该如何在输入后立即进行排序。因此第一次我多次在遍历过程中使用set来进行排序。功能正确但是会超时。 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273#include <cstring>#include <iostream>#include <queue>#include <set>using namespace std;const int N = 1e5 + 5;int n, m;int h[N], e[N], ne[N], idx = 0;bool st[N]; // 标记数组void add(int a, int b) { ...
公告
This is my Blog