- 博客(9)
- 收藏
- 关注
原创 数学知识总结
目录 试除法判定质数 分解质因数 筛质数 试除法判定质数 给定 n 个正整数 ai,判定每个数是否是质数。 输入格式 第一行包含整数 n。 接下来 n 行,每行包含一个正整数 ai。 输出格式 共 n 行,其中第 i 行输出第 i 个正整数 ai 是否为质数,是则输出 Yes,否则输出 No。 数据范围 1≤n≤100 1≤ai≤2^31−1 输入样例: 2 2 6 输出样例: Yes No 质数:在大于1的整数中,如果只包含1和本身两个约数,就被称为质数或.
2022-05-04 22:28:51
573
原创 区间合并算法
区间和并 给定 n 个区间 [li,ri],要求合并所有有交集的区间。 注意如果在端点处相交,也算有交集。 输出合并完成后的区间个数。 例如:[1,3] 和 [2,6]可以合并为一个区间 [1,6]。 输入格式 第一行包含整数 n。 接下来 n 行,每行包含两个整数 l 和 r。 输出格式 共一行,包含一个整数,表示合并区间完成后的区间个数。 数据范围 1≤n≤100000 −10^9≤li≤ri≤10^9 输入样例: 5 1 2 2 4 5 6 7 8 7 9 输出样例:
2022-05-03 14:42:10
392
原创 离散化算法
区间和 假定有一个无限长的数轴,数轴上每个坐标上的数都是 0。 现在,我们首先进行 n 次操作,每次操作将某一位置 x 上的加c。 接下来,进行 m 次询问,每个询问包含两个整数 l 和 r,你需要求出在区间 [l,r]之间的所有数的和。 输入格式 第一行包含两个整数 n 和 m。 接下来 n 行,每行包含两个整数 x 和 c。 再接下来 m 行,每行包含两个整数 l 和 r。 输出格式 共 m 行,每行输出一个询问中所求的区间内数字和。 数据范围 −10^9≤x≤10^9, 1≤n.
2022-05-03 12:46:07
259
原创 双指针算法
最长连续不重复子序列 给定一个长度为 n 的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。 输入格式 第一行包含整数 n。 第二行包含 n 个整数(均在 0~10^5 范围内),表示整数序列。 输出格式 共一行,包含一个整数,表示最长的不包含重复的数的连续区间的长度。 数据范围 1≤n≤10^5 输入样例: 5 1 2 2 3 5 输出样例: 3 朴素做法:O(n^2) for(int i = 0;i < n;i++) for(int j .
2022-05-02 12:58:01
238
原创 大整数运算之高精度
高精度加法 描述 给定两个正整数(不含前导 00),计算它们的和。 输入格式 共两行,每行包含一个整数。 输出格式 共一行,包含所求的和。 数据范围 1≤整数长度≤1000001≤整数长度≤100000 输入样例: 12 23 输出样例: 35 思路: 1.将大整数的每一位都存在数组中 2.模拟人工加法 #include<bits/stdc++.h> using namespace std; const int maxn = 1e6 + 10; //加.
2022-04-30 16:39:26
452
原创 基本的排序问题
目录 快速排序 第K个数 归并排序 逆序对的数量 快速排序 描述 给定你一个长度为 n 的整数数列。 请你使用快速排序对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。 输入格式 输入共两行,第一行包含整数 nn。 第二行包含 n 个整数(所有整数均在 1∼1091∼109 范围内),表示整个数列。 输出格式 输出共一行,包含 n 个整数,表示排好序的数列。 数据范围 1≤n≤1000001≤n≤100000 输入样例: 5 3 1 2 4 5 ...
2022-04-30 13:26:02
214
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅