- 博客(18)
- 收藏
- 关注
原创 排序(sort)的使用
比如我希望按成绩从高到低排要想使int数组从小到大(升序)排序,还可以写return a<b;若果我们要求数组a按x的值从小到大(升序)排序,若x相等,则按y值从小到大排序,可以写int x,y;}a[10];else。
2024-07-27 21:14:19
2883
原创 map的使用
typedefname是键的类型,typedefname2是值的类型如果是字符串到整型的映射,则使用语句:map<string,int> mp;
2024-07-27 21:13:51
962
原创 vector的使用
typename可以是任何的基本类型(例如int,double,char,结构体等),也可以是STL标准容器。//vector嵌套容器注:> >之间的空格不可以省略,会报错的。这里的vis相当于一个二维数组,即vis中的每一个元素又是一个vector。表示创建一个包含n个元素的vector对象name,每个元素的值默认为0。创建一个包含n个元素的vector对象name,每个元素的值为value。
2024-07-24 19:24:36
448
原创 队列(queue)与优先队列(priority_queue)
/typedef可以是任意基本数据类型或容器。如:queue<int> q;//整型队列容器//typename可以是任意基本数据类型或容器,按照降序对队列元素排序。如:priority_queue<int> pq;//整型降序优先队列注:优先级队列默认使用vector作为其底层存储数据的容器, 在vector上又使用了堆算法将vector中元素构造成堆的结构,因此priority_ queue就是堆,所有需要用到堆的位置,都可以考虑使用priority_ queue。
2024-07-24 19:24:20
1213
原创 快速幂取模
快速幂取模是一种高效的算法,用于计算大数的幂次并取模的结果,通常用于解决涉及大数幂运算和模运算的问题。在算法竞赛和密码学中,这种算法是非常常见的。
2024-04-21 13:25:33
421
2
原创 关于素数(质数)
素数定理(Prime Number Theorem,简称PNT)是数论中关于素数分布的重要定理。素数定理指出,对于任何大于1的正实数x,不超过x的素数的个数π(x)与x/ln(x)的比值趋向于1。Input输入数据有若干组,每组数据包含1个整数n(1 < n < 1000000000),若遇到EOF则处理结束。Output对应每组数据,将小于10的n次方的素数的个数值的位数在一行内输出。
2024-04-21 09:00:00
928
2
原创 二进制枚举
设有n个元素,都不选为000...(n个0),都选对应的值为111...(即2的n次方-1,嗯?二进制枚举利用每一位上的1/0数字表示选或者不选该位置对应的元素,实现2的n次方的情况下枚举问题。当a的第i位上的值为1时,即表达式的值不为0,转换为逻辑值即为1,选中第i个元素,加到sum中。由于这题n的范围是1~20,所以使用二进制枚举是合适的,这道题也可以用dfs做。当a的第i位上的值为0时,即表达式的值为0,未选中第i个元素。if(a& 1<<i),位运算中1&1=1,1&0=0。
2024-04-14 18:01:46
273
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人