c++
c++
今天会营业
-
矩阵逼近圆面积
【代码】矩阵逼近圆面积。原创 2024-01-15 18:22:20 · 369 阅读 · 0 评论 -
C语言或C++结构体及其变量的创建方式汇总
struct 结构体类型名。原创 2023-11-03 22:09:21 · 188 阅读 · 0 评论 -
时间复杂度确定算法
一般ACM或者笔试题的时间限制是1秒或2秒。在这种情况下,C++代码中的操作次数控制在 1e7∼1e8为最佳。下面给出在不同数据范围下,代码的时间复杂度和算法该如何选择:时间复杂度 常用算法 N≤30 => 指数级别 dfs+剪枝,状态压缩dp N≤100 => O(N3) floyd,dp,高斯消元 N≤1000 => O(N2),O(N2logN) dp,二分,朴素版Dijkstra、朴素版Prim、Bellman-Ford N≤原创 2022-04-07 14:09:31 · 57 阅读 · 0 评论 -
映射数组(map函数)
映射数组(map函数)原创 2022-01-17 20:01:07 · 34 阅读 · 0 评论 -
集合set函数
集合是数学中的一个基本概念,通俗地理解,集合是由一些不重复的数据组成的。比如{1,2,3}就是一个有1,2,3三个元素的集合。集合函数:set(包含在头文件< set >中);1、构造一个set的语句为:set<想要构造的类型>+构造的变量名;初始的时候全为空如:set<int> aa set<string> bb;2、c++中用insert()函数向集合中插入一个新元素。注意如果集合中已经存在了某个元素,再次插入不会产生任何效果,集合中是不...原创 2022-01-17 19:39:29 · 46 阅读 · 0 评论 -
蓝桥杯算法训练:无聊的逗
资源限制时间限制:1.0s 内存限制:256.0MB问题描述 逗志芃在干了很多事情后终于闲下来了,然后就陷入了深深的无聊中。不过他想到了一个游戏来使他更无聊。他拿出n个木棍,然后选出其中一些粘成一根长的,然后再选一些粘成另一个长的,他想知道在两根一样长的情况下长度最长是多少。输入格式 第一行一个数n,表示n个棍子。第二行n个数,每个数表示一根棍子的长度。输出格式 一个数,最大的长度。样例输入41 2 3 1样例输出3数据规模和约定 n<.原创 2022-01-15 14:37:02 · 200 阅读 · 1 评论 -
动态创建数组(vector)
vector(动态的创建数组,头文件 <vector>)与数组类似,多数情况下开在全局变量位置;1、比如有5万个盒子每个盒子可以最多可以装5万的东西,正常情况下数组是开不了的,此时告诉你,数目的总量维持在2*10的6次方,所以我们可以动态的创建数组,使得每个盒子能装的最大容量都不同,但总量维持在2*10的6次方。2、构造一个vector的语句为:vector<类型名> 想要定义的数组名字。构造时我们可以给数组初始化:vector<类型名> 想要定义的数组名字...原创 2022-01-17 19:25:17 · 256 阅读 · 0 评论 -
二维数组的内存限制、结构体重载函数的写法
二维数组的内存限制:二维数组存数字的话范围一般为【5e3】【5e3】如果不存数字一般为【1e4】【1e4】原创 2023-08-27 16:39:58 · 43 阅读 · 0 评论 -
字符串的输入输出处理(gets()会读入末尾空格,所以scanf()需要读入空格)
【代码】字符串的输入输出处理(gets()会读入末尾空格,所以scanf()需要读入空格)原创 2023-04-07 20:25:51 · 94 阅读 · 0 评论 -
字符逆序(注意使用puts()读空格)
【代码】字符逆序(注意使用puts()读空格)原创 2023-04-07 20:05:33 · 59 阅读 · 0 评论 -
母牛的故事(递推)
2450246。原创 2023-04-07 17:30:43 · 57 阅读 · 0 评论 -
(DP)蚂蚁感冒
向左(ans=left+right+1)左边存在向右(left>0)一只蚂蚁穿过了另一只蚂蚁。必然被感染(right)必然被感染(left)原创 2023-03-30 20:59:12 · 126 阅读 · 0 评论 -
(DP)买不到的数目【蓝桥杯】(裴蜀定理)
因为若d>1,则a和b一定是d的倍数,那么a和b凑出来的数也肯定是d的倍数,所以一定不会存在一个最大数,使得这个数之后的数字都能被a和b凑出来。若ab互质,则一定存在ap+bq=1,两边同时乘以m => apm+bqm=m => (am-q)p+(bm+p)q=m。裴蜀定理:若a,b的最大公约数为d,怎一定存在两个整数p,q使得ap+bq=d,只要ab互质,则一定有解。前提条件:给定a,b,若d=gcd(a,b)>1,则一定不能凑出最大数。再尝试用q来凑,要凑的数字变成m-q。原创 2023-03-30 17:01:24 · 553 阅读 · 0 评论 -
二维前缀和求子矩阵
【代码】二维前缀和求子矩阵。原创 2023-03-29 20:24:36 · 418 阅读 · 0 评论 -
整数二分、实数二分
【代码】整数二分、实数二分。原创 2023-03-29 18:59:08 · 358 阅读 · 0 评论 -
费解的开关(递推)
题目描述你玩过“拉灯”游戏吗?25盏灯排成一个5x5的方形。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。我们用数字“1”表示一盏开着的灯,用数字“0”表示关着的灯。下面这种状态1011101101101111000011011在改变了最左上角的灯的状态后将变成:0111111101101111000011011再改变它正中间的灯后状态将变成:011111原创 2023-03-28 11:13:42 · 338 阅读 · 0 评论 -
斐波那契数列(递推)
斐波那契数列的第 0 项是 0,第 1 项是 1,从第 2 项开始的每一项都等于前两项之和。输入整数 N,求出斐波那契数列中的第 N 项是多少。第一行包含整数 T,表示共有 T 个测试数据。每个测试数据输出一个结果,每个结果占一行,,其中 N 为项数,x 为第 N 项的值。接下来 T 行,每行包含一个整数 N。斐波那契数列。原创 2023-03-26 19:50:05 · 234 阅读 · 0 评论 -
带分数[蓝桥杯]
100 可以表示为带分数的形式:100 = 3 + 69258 / 714。程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。还可以表示为:100 = 82 + 3546 / 197。从标准输入读入一个正整数N (N原创 2023-03-25 20:49:05 · 1795 阅读 · 0 评论 -
递归实现组合型枚举
【代码】递归实现组合型枚举。原创 2023-03-24 16:46:06 · 50 阅读 · 0 评论 -
递归:斐波那契数列、递归实现指数型枚举、递归实现排列型枚举
首先这个等式一定大于n!/2^(n-1)+n!所以这道题的时间复杂度为O(3n*n。原创 2023-03-24 15:58:49 · 525 阅读 · 0 评论 -
DFS数字排序
给定一个整数 n,将数字 1∼n排成一排,将会有很多种排列方法。BFS:queue 空间:O(2^n) 可以找到最短路。DFS:staek 空间:O(n) 不具备最短性。现在,请你按照字典序将所有的排列方法输出。按字典序输出所有排列方案,每个方案占一行。共一行,包含一个整数 n。DFS例题及代码模板。原创 2023-04-03 09:07:26 · 55 阅读 · 0 评论 -
X进制减法 [蓝桥杯2022初赛]
【代码】X进制减法 [蓝桥杯2022初赛]原创 2023-03-20 21:30:39 · 348 阅读 · 0 评论 -
修剪灌木[蓝桥杯2022初赛]
在第一天的早晨,所有灌木的高度都是 0 厘米。爱丽丝想知道每棵灌木最高长到多高。输出 N 行,每行一个整数,第 i 行表示从左到右第 i 棵树最高能长到多高。爱丽丝修剪灌木的顺序是从最左侧的灌木开始,每天向右修剪一棵灌木。当修剪了最右侧的灌木后,她会调转方向,下一天开始向左修剪灌木。爱丽丝在每天傍晚会修剪一棵灌木,让灌木的高度变为 0 厘米。灌木每天从早上到傍晚会长高 1 厘米,而其余时间不会长高。直到修剪了最左的灌木后再次调转方向。有 N 棵灌木整齐的从左到右排成一排。爱丽丝要完成一项修剪灌木的工作。原创 2023-03-19 19:24:11 · 660 阅读 · 0 评论 -
刷题统计[蓝桥杯2022初赛]
【代码】 刷题统计[蓝桥杯2022初赛]原创 2023-03-19 17:30:46 · 88 阅读 · 0 评论 -
顺子日期[蓝桥杯2022初赛]
【代码】顺子日期[蓝桥杯2022初赛]原创 2023-03-19 16:57:05 · 327 阅读 · 0 评论 -
九进制转十进制[蓝桥杯2022初赛]
【代码】九进制转十进制[蓝桥杯2022初赛]原创 2023-03-19 16:42:46 · 137 阅读 · 0 评论 -
堆优化dijkstra基础、模拟堆
【代码】堆优化dijkstra基础、模拟堆。原创 2023-03-19 11:46:51 · 316 阅读 · 0 评论 -
堆、堆排序
使用最后一个节点的值覆盖第一个节点的值,再把数组的下标--,再使用头节点down(1)运算维护一下堆。1、是一个平衡二叉树(即树除了最后一层节点可以不满以外,其它层的节点都是非空的,且最后一层节点是从左往右排列的)令根节点和根节点、左、右子节点中的最小值进行交换,重复此操作。令数值较小节点和根节点、左、右子节点中的最小值进行交换,重复此操作。2、小根堆:根节点的值小于左右子节点的值,所以根节点是最小值。5、修改任意一个元素(STL里面的堆无法进行的操作)x的左二子是:2*x;x的右二子是:2*x+1;原创 2023-03-19 09:41:39 · 310 阅读 · 0 评论 -
并查集及代码模板
【代码】并查集。原创 2023-03-18 16:32:23 · 383 阅读 · 0 评论 -
Trie树
【代码】Trie树。原创 2023-03-18 15:58:07 · 39 阅读 · 0 评论 -
STL(不需要记太多,现用现查):vector、pair、string、queue、priority_queue、stack、deque、set,map ,multiset,multiset……
每次插入数据的时间复杂度为O(1),申请空间的次数时log(n)unordered_set,unordered_map,unordered_multiset,unordered_multimap,哈希表。set,map ,multiset,multiset,multimap,基于平衡二叉树(红黑树),动态维护有序序列。push_back() 最后插入一个数/pop_back()删除最后一个数。队列,push(),front(),pop()优先队列,push(),top(),pop()clear() 清空。原创 2023-03-17 20:50:19 · 94 阅读 · 0 评论 -
哈希表:链地址法、开放寻址法、字符串前缀哈希法
哈希表原创 2023-03-17 10:04:23 · 1105 阅读 · 0 评论 -
Arknights(1)----追梦算法
t原创 2022-12-29 15:21:41 · 137 阅读 · 1 评论