自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 ccf-星际旅行(80分)

80分代码(此题主要考察cmath库的使用,注意,精度可以自己定义,默认是保留五位小数)#include <iostream>#include <cmath>#include <algorithm>#include <vector>using namespace std;double pi=acos(-1);long long dimen;long long p_num;long long r;vector<long l...

2020-10-04 11:18:02 1303 1

原创 ccf-区块链(80分)

题目:在一个分布式网络中,有n个节点通过m条边相连,节点编号从1至n。每个节点初始化都有一个相同的“创世块”,链长都为1,每个节点在整个过程中都需要维护一条主链,任何操作都只在主链上进行。在整个系统中产生的每个新块都有唯一的整数编号,创始块的编号为0,其余块的编号都为正整数。当某个节点的链更新时,会将它的主链发送给它相邻的节点(邻居);而当节点收到链时,决定是否更新自己的主链下列情况可能会导致某个节点的链更新:·某个节点接收到邻居发送过来的链,与当前自己的主链进行比较:如果接收到的链更长,则将其作为自己

2020-10-04 10:49:12 396

原创 小明种苹果2(ccf)

树木是按照环形排列的#include <iostream>#include <stdio.h>using namespace std;//in//树的颗数//对每棵树的操作数量+具体操作(去果or重新统计),第一步一定是统计//out//剩余的苹果总数目,产生掉果的树的颗数,相邻的三棵树都掉果的组数(环形)(T,D,E)int main(){ FILE *stream1; FILE *stream2; freopen_s(&stream1, "in

2020-07-29 12:07:46 214

原创 垃圾站回收(ccf)

题目大意:只有上下左右全部有坐标存在的时候,对应的该坐标才可以被选为垃圾站,同时该坐标的四个对角代表分数(0,1,2,3,4),求分数为0,1,2,3,4的垃圾站个数收获点:安全性较高的文件输入输出流map和array的组合使用(出发点是尽可能为了整合信息)#include <iostream>#include <stdio.h>#include <map>#include <array>#include <cmath>#in

2020-07-28 20:08:23 210

原创 ccf化学方程式配平检验

样例输入:11H2+O2=H2O2H2+O2=2H2OH2+Cl2=2NaClH2+Cl2=2HClCH4+2O2=CO2+2H2OCaCl2+2AgNO3=Ca(NO3)2+2AgCl3Ba(OH)2+2H3PO4=6H2O+Ba3(PO4)23Ba(OH)2+2H3PO4=Ba3(PO4)2+6H2O4Zn+10HNO3=4Zn(NO3)2+NH4NO3+3H2O4Au+8NaCN+2H2O+O2=4Na(Au(CN)2)+4NaOHCu+As=Cs+Au样例输出:NYN

2020-07-14 18:09:58 330

原创 des

des大致可以分为三个部分,第一步,密匙的生成,第二步,加密阶段,第三步,解密阶段,下面给出各个部分的测试代码,以及最终的汇总。第一步:密匙生成函数测试#include <iostream>#include <string> using namespace std;//总共需要16个子密匙 //密匙的生成分为多步://1.将初始的密匙64位压缩成56位//2.将对应的56位拆分成两个28位,然后分别根据移位表移位,然后合并//3.将得到的56位压缩成48位//4

2020-07-13 16:14:51 119

原创 最多连接字符串的长度

大致题意:输入n个字符串,想要连接两个字符串需要第一个的end等于第二个的begin,并且最后需要保证得到的最大字符串的首和尾相同可以尝试利用dp的思想记录首尾信息#include <iostream>#include <string>#include <algorithm>using namespace std;int main(){ fre...

2020-04-13 21:37:45 250

原创 从矩形中切割出最大的正方形

样例如图#include <iostream>#include <string>#include <cmath>using namespace std;string input[2010];int lt[2010][2010];int up[2010][2010];int Find(int n,int m){ int Max=1; ...

2020-04-13 10:09:01 1041

原创 寻找数组中第k小的元素---算法设计与分析的课堂记录

#include <iostream>#include <algorithm>#include <vector>#include <cmath>using namespace std;const int maxN=10010;int b[maxN];int M[maxN];//储存中项 int A1[maxN];int A2[ma...

2020-04-09 15:56:37 193

原创 基于分治算法的快速排序

#include <iostream>#include <algorithm>#include <cmath>using namespace std;const int maxN=10010;int a[maxN];int n;//快排的思路是两步:split+分治,我们不妨约定,数组从1开始储存有效数字 //第一步是split,目的是以数...

2020-04-09 15:31:15 352 1

原创 堆的一些基本操作实现

//关于建堆和对其的一些操作#include <iostream>#include <algorithm>using namespace std;const int maxn=100;int heap[maxn],n=10;//将第一个结点储存在数组的一号位 //函数功能:对heap数组在low到high的范围内向下调整void downAdjust(i...

2020-03-22 14:44:32 173

原创 四种分形图形

1.基于打点的分形三角形/* A1 Sierpinski Gasket Program 谢尔平斯基镂垫 *//* gasket.c *//* Two-Dimensional Sierpinski Gasket 谢尔平斯基镂垫 *//* Generated Using Randomly Selected Vertices *//* And Bisec...

2020-03-22 14:40:19 3532

原创 寻找多数元素---算法设计课堂记录

多数元素的定义:在n个元素中之后有n/2个同一个元素,那么就称这个元素为多数元素#include <iostream>using namespace std;const int maxN=50;//capacityconst int none=-1;int a[maxN];int n;//numberint candidate(int x)//check a[x] ...

2020-03-20 14:13:56 167

原创 基于modelsim的alu运算器编写(verilog语言)

源文件:module alu5(ena, clk, opcode, a, b, c,d); parameter N = 32; //状态编码 parameter sla=3'b000, sra=3'b001, add=3'b010, sub=3'b011, mul=3'b100, andd=3'b101, ord=3'b110, notd=3'b111; //定义...

2020-03-20 13:42:17 2002 1

转载 glMatrixMode()函数的三个参数

https://blog.csdn.net/flyyufenfei/article/details/66478480?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158415763019725219906612%2522%252C%2522scm%2522%253A%252220140713.130056874…%2522%257...

2020-03-14 14:56:49 186

原创 图形绘制过程(流水线)

图形绘制流水线体系结构我们首先需要明白,图像都是通过一组图元组成,每个图元又包含一组顶点,所以所有的图像都是可以通过类似过程来进行处理,最后达到成像的目的,简单来说,就是顶点如何转变为像素的问题。现有的常用技术是通过以下四步来解决,比较重要的是vertex shader以及fragment shader:(1)顶点处理总的来说,这个模块的主要功能是执行坐标变换、为了保留三维信息而做的投影变...

2020-03-13 21:33:04 5278

原创 结构体中的运算符重载(运算符和逻辑符)

struct complexN//包含四种运算符的重载 { double real; double imagi; complexN(double a,double b) { real=a; imagi=b; } complexN() { real=0; imagi=0; } complexN operator+ (complexN a) { complex...

2020-03-10 16:10:35 654

原创 基于BFS的腐烂橘子的问题(题源leetcode)

题目大意:在给定的网格中,每个单元格可以有以下三个值之一:值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。示例 1:输入:[[2,1,1],[1,1,0],[0,1,1]]输出:4示例 2:输入:[[2,1...

2020-03-09 17:59:25 221

原创 动态规划例题leetcode例题6:依旧是回文,但是有点不一样

给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被计为是不同的子串。示例 1:输入: “abc”输出: 3解释: 三个回文子串: “a”, “b”, “c”.示例 2:输入: “aaa”输出: 6说明: 6个回文子串: “a”, “a”, “a”, “aa”, “aa”, “aaa”.注意:输入的字符串...

2020-02-27 21:06:02 120

原创 动态规划例题leetcode例题5(回文串)这个题非常重要

给定一个字符串s,找到其中最长的回文子序列。可以假设s的最大长度为1000。示例 1:输入:“bbbab”输出:4一个可能的最长回文子序列为 “bbbb”。示例 2:输入:“cbbd”输出:2一个可能的最长回文子序列为 “bb”。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-palindromic-...

2020-02-27 19:46:51 560

原创 动态规划例题leetcode例题4

一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?说明:m 和 n 的值均不超过 100。示例 1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可以到达右下角。向右 -> 向右...

2020-02-26 14:13:04 257

原创 动态规划例题leetcode例题3

一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。注意:本题相对原题稍作改动示例 1:输入: [1,2,3,1]输出: 4解释: 选择 1 号预约和 3 号预约,总时长 = 1 + 3 = 4。示例 2:输入: [2,7,9...

2020-02-26 12:31:35 272

原创 动态规划例题leetcode例题2

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是...

2020-02-26 11:56:19 125

原创 动态规划例题leetcode例题1

给定一个整数数组(有正数有负数),找出总和最大的连续数列,并返回总和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/contiguous-sequence-lcci题解:#include <i...

2020-02-21 22:01:06 201

原创 openGL学习记录(其一)

首先,感谢傅老师的视频教程,下面给出地址https://www.bilibili.com/video/av24353839里面有着详细的搭建环境的内容,主要使用的是glfw和glew第一课根据视频学会了搭建环境,以及最简单的创建窗口#define GLEW_STATIC//根据 glew32s.lib glew32.lib 链接库不同 ,可以选择是否打开这个宏#include <...

2020-02-21 21:29:46 183

原创 最短路径(其一)

最短路径的常用方法一般有四种:Dijsktra算法、BF算法、SPFA算法、Floyd算法其中,Dijsktra算法主要针对不存在负权的图,所以应用也更为广泛,下面首先介绍这个算法的两种形式一、邻接矩阵形式#include <bits/stdc++.h>using namespace std;const int MAXV=1000;const int INF=0x3fff...

2020-02-14 23:52:48 143

原创 并查集的基本概念以及相关函数实现和应用

并查集:“并”:合并;“查”:查找;“集”:集合也就是说并查集支持两个操作:(1)合并两个集合(2)查找两个元素是否属于同一个集合并查集的实现其实就是通过一个数组:int father[N]father[a]=b代表的是a的父亲是b基本相关操作:#include <bits/stdc++.h>using namespace std;//并查集的初始化for(int...

2020-02-11 23:40:03 136

原创 BST的相关题目

题目大意:给出一个序列,你需要判断它是不是一个BST的先序遍历序列或者是不是BST镜像的先序序列(所谓的镜像就是所有的根结点的左子树的所有结点值大于对应的根结点的值,而右子树的所有结点值大于对应的根结点的值)如果是的话,就输出YES以及树的后序序列如果不是的话,就输出NO样例:输入78 6 5 7 10 8 11输出YES5 7 6 8 11 10 8#include <...

2020-02-11 23:24:33 144

原创 BST(二叉搜索树)的基本知识

比较简单来讲的话,BST就是根结点的左子树所有的结点值都要小于根结点的值根结点右子树所有结点的值都要大于根结点的值比较重要的就是插入和创建树和查找,其中创建树是通过查找来实现的其余的操作都和普通的二叉树差不多#include <bits/stdc++.h>using namespace std;struct node{ int val; node* lchild;...

2020-02-11 23:10:24 486

原创 根据中序和后序遍历推导层次遍历

输入:总的结点个数n中序序列后序序列输出:层次遍历序列注意输出的最后没有空格测试样例:输入:72 3 1 5 7 6 41 2 3 4 5 6 7输出:4 1 6 3 5 7 2总体思路:两个序列的输入,创建树,层次遍历树#include <iostream>#include <queue>#include <algorithm>...

2020-02-11 22:44:07 694

原创 string.h头文件以及stdio.h头文件下的sscanf和sprintf补充

string.h头文件下的常用函数strlen(字符数组的首地址):返回值是一个字符数组的大小(不包括\0)strlen(字符数组1,字符数组2):返回值分为三种情况(1)1小于2,返回一个负整数(2)1等于2,返回零(3)1大于2,返回一个正整数strcpy(字符数组1,字符数组2):把2复制给1,包括\0strcat(字符数组1,字符数组2):把2接在1的后面sscanf:把字...

2020-02-10 11:03:45 503

原创 数学问题:公约数和公倍数、分数运算、素数、高精度、math常见函数

以下内容整理自《算法笔记》—胡凡引子—数学黑洞问题题目大意:给定四个0~9的数字,按照升序排列得到一个正整数MIN,按照降序排列得到一个正整数MAX,n=MAX-MIN,那么对n的四位也做同样的操作,发现到了最后会循环得到一个数:6174,请证明这个过程使用函数实现功能是一个好习惯,比如这个题如果不使用函数的话,直接在主函数中用MAX和MIN去充当to_number中的sum参数,是非常危险...

2020-02-09 22:52:17 373

原创 贪心算法例题(持续更新)

组个最小数题目大意:给定0~9十个数字各自的数目,要求所有的给定数字必须全部用上,并使组成的数字最小难度:容易输入样例:2 2 0 0 0 3 0 0 1 0输出样例:10015558#include <iostream>using namespace std;//先从非零的数中选一个最小的当做首位,然后后面就可以从所有的数中从小到大的选 int main(){ ...

2020-02-07 20:54:20 1542

原创 algorithm头文件下面的常用函数

max(x,y) min(x,y) abs(x)功能不必多讲,注意一下,对于取绝对值函数,x必须是整数,如果取浮点数的绝对值,可以使用math头文件中的fabs另外,如果想要去三个值的最大值,可以使用max(x, max(y,z))的写法swap(x,y)交换reverse(it,it2)传递进去的是数组指针或者是容器的迭代器,功能是将[it,it2)范围内的元素进行反转#inc...

2020-02-05 22:32:56 185

原创 STL的用法总结2

queue容器常用函数:push():入队pop():出队front():获取队首元素back():获取队尾元素empty():检测是否为空size():元素的个数queue的主要用途是实现广度优先遍历,不用手动实现一个队列在使用front()和pop()函数之前应当用empty检测一下队列是否为空,否则容易报错priority_queue容器定义:第一种:priority_...

2020-02-05 19:54:13 147

原创 树的先序中序后序的递归和非递归算法

以下的C++代码实现六种遍历方式,递归和非递归各三种#include <iostream>#include <vector>#include <stack>using namespace std;struct TreeNode{ int val; TreeNode* left; TreeNode* right; TreeNode(int x...

2020-02-04 20:18:54 130

原创 leetcode61 旋转链表

题目:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4-&gt...

2020-02-03 11:21:41 111

原创 leetcode24之两两交换链表中的节点

这个题有点意思,可以用递归的思想来解决,也可以用三指针法解决方法一#include <iostream>using namespace std;struct ListNode{ int val; ListNode* next; ListNode(int x):val(x),next(NULL) {}};ListNode* swapPairs(ListNode* ...

2020-02-02 23:19:13 104

原创 leetcode86 分隔链表

由于学习数据结构的时候老师使用的java语言,所以,一方面为了加深对各种数据结构的运用和理解,也为了熟悉数据结构在c语言中的应用,决定从链表开始,每种数据结构,都要至少找到十个题进行练习,对自己比较有启发的题目就单独拿出来,否则就放在杂记中。题目大意给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。eg:输入1 4 3 2 5 2 3输...

2020-02-02 11:49:12 117

原创 STL(vector, set, map, string)的用法总结1

因为STL在C++中极为重要,所以在这里做出小小的总结三种常用的容器是vector,set,map,头文件同名,定义方法例子为:vector < int > example 访问方式与数组一样,或者利用迭代器访问set < int > example 利用迭代器访问map < int, int > example ...

2020-01-30 22:52:45 210

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除