自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 资源 (5)
  • 收藏
  • 关注

原创 SPFA算法

SPFA简介SPFA (shortest path faster algorithm) 是一个单源最短路径算法,与另一个单源最短路算法dijkstra不同的是(什么你还不知道dijkstra?),SPFA可以用来处理含有负权的图,并且也可以判断图中是否存在负权回路。实际上,SPFA是Bellman-Ford算法的一种队列实现,减少了不必要的冗余计算。SPFA的时间复杂度可以达到,k是每一个节点的平均进队次数,可以证明k不大于2。SPFA算法流程首先说一下我们都需要哪些东西: 一个储存节

2021-11-13 17:16:30 1026

转载 Bellman-Ford算法

Dijkstra算法是处理单源最短路径的有效算法,但它局限于边的权值非负的情况,若图中出现权值为负的边,Dijkstra算法就会失效,求出的最短路径就可能是错的。这时候,就需要使用其他的算法来求解最短路径,Bellman-Ford算法就是其中最常用的一个。该算法由美国数学家理查德•贝尔曼(RichardBellman,动态规划的提出者)和小莱斯特•福特(LesterFord)发明。适用条件&范围:单源最短路径(从源点s到其它所有顶点v);有向图&无向图(无向图可以看...

2021-11-13 17:03:38 254

原创 P7912 [CSP-J 2021] 小熊的果篮

#include<bits/stdc++.h>using namespace std;const int maxN = 2e5 + 5;struct Fruit{ int type; int Next; int tail;}fruit[maxN];int main(){ //freopen("test.in", "r", stdin); int n; scanf("%d", &n); fruit[0].typ.

2021-11-05 22:23:07 904

原创 进程与线程

进程  我们都知道计算机的核心是CPU,它承担了所有的计算任务,而操作系统是计算机的管理者,它负责任务的调度,资源的分配和管理,统领整个计算机硬件;应用程序是具有某种功能的程序,程序是运行于操作系统之上的。  进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程序,数据集合和进程控制块三部分组成。程序用于描述进程要完成的功能,是控制进程执行的指令集;

2021-10-31 13:12:18 139

原创 排序算法演示

#include <iostream>#include <cstdio>#include <algorithm>#include <Windows.h>#include <ctime>using namespace std;void gotoxy(int x, int y){ COORD pos = {x,y}; HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);// 获取标.

2021-10-31 12:54:56 98

原创 /*C++注释规范*/

So——Let us do a summary.1. 文件 /* * * * * * * * * * * * * * * * * * * * Copyright (C): 本代码所有版权为xxx所有,任何个人或者组织不得以任何方式复制、转载以挪作他用,否则将构成对xxx的产权知识侵权。 * @file : 文件名 ...

2021-09-15 12:56:32 295

原创 C++超好用的函数

获取IP地址:const char* GetLocalIpAddress(){ WORD wVersionRequested = MAKEWORD(2, 2); WSADATA wsaData; if (WSAStartup(wVersionRequested, &wsaData) != 0) return "-1"; char local[255] = { 0 }; gethostname(local, sizeof(local)); hostent* ph = get

2021-08-24 19:32:36 335

原创 C++运行exe可执行文件

一、system函数格式:system(filename);举例:#include <Windows.h>//stdlib.h#include <iostream>using namespace std;int main(){ system("_mw.exe");}优点:简洁缺点:打开后不能继续运行当前程序二、SHELLEXECUTEINFO添加函数:BOOL OpenExeFile(LPCSTR mode, LPCSTR filen.

2021-08-24 18:41:07 2828

原创 C++实现弹幕

#define WINVER 0x0501#define _WIN32_WINNT 0x0501 #include <windows.h>#include <tchar.h> //全局变量HINSTANCE hInst;UINT nDesktopWidth;UINT nDesktopHeight; //绘制文本static void FLOATTEXT_OnPaint(HWND hWnd){ HDC hdc; int len; TCHA..

2021-08-24 15:21:47 666

原创 C++-数字雨-控制台

#include <time.h>#include <Windows.h>#include <cstdio> typedef struct //记录雨滴的结构体{ int x, y; char ch;}RAINDROP; const int BUFFER_SIZE = 50;int WIDTH = 80;int HEIGHT = 30;const int RAIN_LENGTH = 18; RAINDROP raindropLine[B.

2021-08-23 21:55:05 153

原创 cmd怎么变得这么好看?

见过吗?其实只要——windows terminal长期以来,windows都没有像mac、Linux那样,为开发者提供一个较为美观的命令行界面。这种情况一直到2019年windows terminal的推出才有所改观。你可以在Microsoft Store中直接安装它。安装完毕后,启动效果如下:打开“设置-power shell图标-外观”,可以看到现在终端的字体是Cascadia Mono,可以查证这是一种等宽字体。windows powershell的字体的选择十分...

2021-08-23 09:56:07 290

原创 1420:Dijkastra(II)

1420:Dijkastra(II)时间限制: 1000 ms 内存限制: 131072 KB提交数: 2835 通过数: 382【题目描述】给定一个无向连通图,求从1到n的最短路。【输入】第一行两个整数n,m,代表点数和边数;接下来m行,每行三个整数s,t,d,代表从s到t有一条长度为d的无向边。【输出】输出一个整数表示最短距离。【输入样例】2 31 2 11 2 32 2 0【输出样例】1【提示】...

2021-08-23 08:38:58 1103

原创 数据结构(stack&queue)

数据结构(stack&queue)栈stack栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。(最最)常用的函数: 函数 功能 q.top() 获取

2021-08-23 08:33:02 117

原创 广度优先搜索算法bfs

广度优先搜索算法广度优先搜索算法是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。其别名又叫BFS(Breadth First Search),属于一种盲目搜寻法,目的是系统地展开并检查图中的所有节点,以找寻结果。换句话说,它并不考虑结果的可能位置,彻底地搜索整张图,直到找到结果为止。过程:例如下面这张图,蓝色代表无路,白色代表有路,黄色代表已走过,上面的数字代表步数,斜杠即走不了 ..

2021-08-22 21:10:43 231

原创 1172:求10000以内n的阶乘

1172:求10000以内n的阶乘时间限制: 1000 ms 内存限制: 65536 KB提交数: 24454 通过数: 6083【题目描述】求1000010000以内nn的阶乘。【输入】只有一行输入,整数nn(0≤n≤100000≤n≤10000)。【输出】一行,即n!n!的值。【输入样例】4【输出样例】24#include<iostream>#include<cstring>#de...

2021-08-21 20:35:00 1519

原创 1171:大整数的因子

1171:大整数的因子时间限制: 1000 ms 内存限制: 65536 KB提交数: 8782 通过数: 5119【题目描述】已知正整数kk满足2≤k≤92≤k≤9,现给出长度最大为3030位的十进制非负整数cc,求所有能整除cc的kk。【输入】一个非负整数cc,cc的位数≤30≤30。【输出】若存在满足c%k == 0的kk,从小到大输出所有这样的kk,相邻两个数之间用单个空格隔开;若没有这样的kk,则输出"none"。【输入...

2021-08-21 20:22:07 591

原创 1308:【例1.5】高精除

1308:【例1.5】高精除时间限制: 1000 ms 内存限制: 65536 KB提交数: 9971 通过数: 4757【题目描述】高精除以高精,求它们的商和余数。【输入】输入两个低于300位的正整数。【输出】输出商和余数。【输入样例】123131231845757768789798764232456786432456787654324567142534675678686786786712313123187671417381...

2021-08-21 20:20:16 329

原创 1174:大整数乘法

1174:大整数乘法 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 13876 通过数: 7794 【题目描述】 求两个不超过200位的非负整数的积。 【输入】 有两行,每行是一个不超过200位的非负整数,没有多余的前导0。 【输出】 一行,即相乘后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。 【...

2021-08-21 20:18:44 1058

原创 代码不规范,亲人两行泪

代码不规范引发的血案:美国的一家名为 WTS Paradigm 的企业资源规划软件(ERP)开发商的办公楼内,该公司的一名程序员持枪杀了4名同事,因他们总是不写注释,不遵循驼峰命名,最主要还天天git push -f 。当时43岁的安东尼·汤(Anthony Tong)在办公室,拿出一把事先藏起来的半自动手枪向周围4名同事开火。其他工作人员见状纷纷逃离办公楼,跑到附近的公司避难。当警察来到现场时,他竟然还想袭击警察!看来这位程序员真是被愤怒冲昏了头脑,因他的不配合,最后警察不得已向他开枪,在送往医院的途

2021-08-21 20:08:58 638

原创 1198:逆波兰表达式

1198:逆波兰表达式时间限制: 1000 ms 内存限制: 65536 KB提交数: 10753 通过数: 6357【题目描述】逆波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2 + 3的逆波兰表示法为+ 2 3。逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2 + 3) * 4的逆波兰表示法为* + 2 3 4。本题求解逆波兰表达式的值,其中运算符包括+ - * /四个。【输入】输入为一行,其中运算符和...

2021-08-21 19:59:36 230

原创 1228:书架

1228:书架 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 8208 通过数: 4680 【题目描述】 John最近买了一个书架用来存放奶牛养殖书籍,但书架很快被存满了,只剩最顶层有空余。 John共有NN头奶牛(1≤N≤20,0001≤N≤20,000),每头奶牛有自己的高度Hi(1≤Hi≤10,000)Hi(1≤Hi≤10,000),N头奶牛的总高度为SS。书架高度为B(1≤B≤S<2,00...

2021-08-21 19:56:29 197

原创 1213:八皇后问题

1213:八皇后问题 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 21323 通过数: 7761 【题目描述】 在国际象棋棋盘上放置八个皇后,要求每两个皇后之间不能直接吃掉对方。 【输入】 (无) 【输出】 按给定顺序和格式输出所有八皇后问题的解(见样例)。 【输入样例】 (无) 【输出样例】 No. ...

2021-08-21 19:54:36 1423

原创 1294:Charm Bracelet

1294:Charm Bracelet时间限制: 1000 ms 内存限制: 65536 KB提交数: 6428 通过数: 3202【题目描述】经典0—1背包问题,有n个物品,编号为i的物品的重量为w[i],价值为c[i],现在要从这些物品中选一些物品装到一个容量为m的背包中,使得背包内物体在总重量不超过m的前提下价值尽量大。【输入】第1行:两个整数,n(物品数量,n≤3500)和m(背包容量,m≤12880)。第2..n+1行::每行二个整数w[...

2021-08-21 19:49:20 328

原创 背包问题(多重背包&混合背包)

背包问题(多重背包&混合背包)1.多重背包多重背包问题的思路跟完全背包的思路非常类似,只是k的取值是有限制的,因为每件物品的数量是有限制的,状态转移方程为:dp[i][v] = max{dp[i - 1][v - k * c[i]] + w[i] | 0 <=k <= n[i]}     其中c[i]是物品的数量,和完全背包的不同支出在于完全背包可以取无数件,而多重背包给定了最多能取的数量。这样也是三个循环,分别是背包容量,物品个数和物品种类。这样如果数量比较多的情况,.

2021-08-21 08:47:24 360

原创 Visual Studio下载太慢的解决方法

使用visual studio installer下载visual studio 2019的速度很慢, 每秒只有三四kB, 改进后调高到6MB/s三步即可解决:步骤一: 去站长工具为下载过程中使用的域名找一个合适的ip输入download.visualstudio.microsoft.com然后点击"检测", 找个TTL值较大的IP, 然后复制步骤二: 修改host文件host文件在C:\Windows\System32\drivers\etc目录下在host文件末尾加上一句【查.

2021-08-20 18:34:38 5736

原创 2005:【20CSPJ普及组】直播获奖

2005:【20CSPJ普及组】直播获奖时间限制: 1000 ms 内存限制: 131072 KB提交数: 2624 通过数: 615【题目描述】NOI2130 即将举行。为了增加观赏性,CCF 决定逐一评出每个选手的成绩,并直播即时的获奖分数线。本次竞赛的获奖率为w%w%,即当前排名前w%w%的选手的最低成绩就是即时的分数线。更具体地,若当前已评出了pp个选手的成绩,则当前计划获奖人数为max(1,⌊p∗w%⌋)max(1,⌊p∗w%⌋),其中...

2021-08-20 17:25:54 1191

原创 1962:【13NOIP普及组】表达式求值

1962:【13NOIP普及组】表达式求值时间限制: 1000 ms 内存限制: 131072 KB提交数: 2337 通过数: 1062【题目描述】给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值。【输入】输入仅有一行,为需要你计算的表达式,表达式中只包含数字、加法运算符“++”和乘法运算符“∗∗”,且没有括号,所有参与运算的数字均为00到231−1231−1之间的整数。输入数据保证这一行只有0∼90∼9、++、∗∗这1212...

2021-08-20 16:58:35 691

原创 1970:【15NOIP普及组】扫雷游戏

1970:【15NOIP普及组】扫雷游戏时间限制: 1000 ms 内存限制: 131072 KB提交数: 3911 通过数: 2399【题目描述】扫雷游戏是一款十分经典的单机小游戏。在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。现在给出nn行mm列的雷区中的地雷分布,要求计算出...

2021-08-20 16:56:40 696

原创 2007:【20CSPJ普及组】方格取数

2007:【20CSPJ普及组】方格取数时间限制: 1000 ms 内存限制: 131072 KB提交数: 1009 通过数: 404【题目描述】设有n×mn×m的方格图,每个方格中都有一个整数。现有一只小熊,想从图的左上角走到右下角,每一步只能向上、向下或向右走一格,并且不能重复经过已经走过的方格,也不能走出边界。小熊会取走所有经过的方格中的整数,求它能取到的整数之和的最大值。【输入】第一行有两个整数n,mn,m。接下来nn行每行mm...

2021-08-20 16:53:22 580

原创 1281:最长上升子序列

1281:最长上升子序列时间限制: 1000 ms 内存限制: 65536 KB提交数: 15588 通过数: 8022【题目描述】一个数的序列bibi,当b1<b2<...<bSb1<b2<...<bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1,a2,...,aN)(a1,a2,...,aN),我们可以得到一些上升的子序列(ai1,ai2,...,aiK)(ai1,ai2,...,aiK),这里1≤i1<i...

2021-08-20 16:49:12 146

原创 背包问题(0/1背包、完全背包)

1.0/1背包01背包是在M件物品取出若干件放在空间为W的背包里,每件物品的体积为W1,W2至Wn,与之相对应的价值为P1,P2至Pn。01背包是背包问题中最简单的问题。01背包的约束条件是给定几种物品,每种物品有且只有一个,并且有权值和体积两个属性。在01背包问题中,因为每种物品只有一个,对于每个物品只需要考虑选与不选两种情况。如果不选择将其放入背包中,则不需要处理。如果选择将其放入背包中,由于不清楚之前放入的物品占据了多大的空间,需要枚举将这个物品放入背包后可能占据背包空间的所有情况。状..

2021-08-20 15:52:38 378

原创 C++ stack

一、定义栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。(https://baike.baidu.com/item/%E6%A0%88/12808149#3_3)二、常用函数函数 功能 q.top() .

2021-08-18 18:55:03 264

原创 C++搜索亲和数

#include <iostream> using namespace std; int divsum(int);const unsigned int INITNUM = 2147483647; int main(){ int num_1 = 220,num_2 = 284; cout<<"找到亲和数:"<<num_1<<"\t\t"<<num_2<<endl; for (int num_1 =.

2021-08-18 18:39:32 412

原创 怎么证明哥德巴赫猜想(C++)

#include <iostream>#include <cstdlib>#include <cstdio>#include <cmath>using namespace std;inline int prime(int);int main(){ int f = 0; bool b = 0; for (long long x = 4; x < 9223372036854775807; x += 2)//lo...

2021-08-18 17:36:04 547

原创 1281:最长上升子序列

1281:最长上升子序列时间限制: 1000 ms 内存限制: 65536 KB提交数: 15560 通过数: 8007【题目描述】一个数的序列bibi,当b1<b2<...<bSb1<b2<...<bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1,a2,...,aN)(a1,a2,...,aN),我们可以得到一些上升的子序列(ai1,ai2,...,aiK)(ai1,ai2,...,aiK),这里1≤i1<i...

2021-08-18 17:04:31 454

原创 编程常用单词1500个

很实用的编程英语词库,共收录一千五百余条词汇。第一部分:application 应用程式 应用、应用程序application framework 应用程式框架、应用框架 应用程序框架architecture 架构、系统架构 体系结构argument 引数(传给函式的值)。叁见 parameter 叁数、实质叁数、实叁、自变量array 阵列 数组arrow operator arrow(箭头)运算子 箭头操作符assembly 装配件assembly languag

2021-08-18 16:59:29 9604

转载 GetLasError参数详解

GetLastErrorGetLastError返回的值通过在api函数中调用SetLastError或SetLastErrorEx设置。函数  并无必要设置上一次错误信息,所以即使一次GetLastError调用返回的是零值,也不能  担保函数已成功执行。只有在函数调用返回一个错误结果时,这个函数指出的错误结果  才是有效的。通常,只有在函数返回一个错误结果,而且已知函数会设置GetLastError  变量的前提下,才应访问GetLastError;这时能保证获得有效的结果。SetL

2021-08-17 17:49:44 1337

原创 Windows Api示例程序

(仅供参考):#include <Windows.h>LRESULT CALLBACK WndProc(HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam){ switch (Message) { case WM_CLOSE: DestroyWindow(hWnd); break; case WM_DESTROY: PostQuitMessage(0); system("cls"); br

2021-08-16 21:54:30 247

原创 信息学奥赛一本通 - 1824:【01NOIP提高组】一元三次方程求解

1824:【01NOIP提高组】一元三次方程求解时间限制: 1000 ms 内存限制: 65536 KB提交数: 958 通过数: 634【题目描述】有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差的绝对值>=1。要求由小到大依次在同一行输出这三个实根(根与根之间留有空格),并精确到小数点后2位。提示:记方程f(x...

2021-08-13 16:33:19 623

原创 C++那年预处理那些事~~~

一、定义程序设计领域中,预处理一般是指在程序源代码被翻译为目标代码的过程中,生成二进制代码之前的过程。典型地,由预处理器(preprocessor) 对程序源代码文本进行处理,得到的结果再由编译器核心进一步编译。这个过程并不对程序的源代码进行解析,但它把源代码分割或处理成为特定的单位——(用C/C++的术语来说是)预处理记号(preprocessing token)用来支持语言特性(如C/C++的宏调用)。(版权:Baidu百科)二、例子(刚刚学完说明文十大说明方法,那就举几个栗子)#

2021-08-13 15:46:53 104

MinGW-xxxx.zip

免费下载

2021-10-24

C&C++手册.zip

C&C++手册.zip

2021-08-21

opencv-4.1.0-vc14_vc15.zip

opencv

2021-08-21

[中文]STL参考手册.zip

STL参考手册

2021-08-21

opengl-glfw&glut.zip

(默认0积分)

2021-08-20

空空如也

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

TA关注的人

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