自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 江苏省赛(H. Reverse the String)

江苏省赛H题目:思路:头一定是排序后第一个和之前未排序前不同的点,枚举尾巴,找出字典序最小的尾巴,用哈希+二分寻找尾巴代码:#include<iostream>#include<algorithm>#include<vector>#include<map>#include<queue>#include<stack>#include<set>#include<cmath>#include

2022-05-07 19:10:51 414

原创 通过后序和中序建立二叉树

通过后序和中序建立二叉树代码#include<iostream>#include<algorithm>#include<vector>#include<map>#include<queue>#include<stack>#include<set>#include<cmath>#include<cstring>#define inf 0x3f3f3f3f#define pb

2022-04-22 12:51:15 255 2

原创 (头歌)编程实现矩阵连乘问题的求解

编程实现矩阵连乘问题的求解思路:由矩阵相乘的计算方式可知,每次相乘增加的数乘次数只和,相乘矩阵的维数有关;状态分析:dp[i][j]dp[i][j]dp[i][j]表示从第iii个矩阵到第jjj个矩阵相乘的最少数乘次数状态计算:每次从[i,j)[i,j)[i,j) 中寻找一个kkk,计算[i,k][i,k][i,k]与[k+1,j][k+1,j][k+1,j]两部分矩阵相乘的结果,取最小值状态转移方程:dp[i][j]=min(dp[i][k]+dp[k−1][j]+col[i]row[k

2022-03-30 20:34:52 1007

原创 Codeforces Round #779 (Div. 2) D2. 388535 (Hard Version)

Codeforces Round #779 (Div. 2) D2. 388535 (Hard Version)题目思路:求解ans,使ans与 ai 异或后,数组a是[l,r]的一个全排列,由于每个数不同,所以异或后也不会相同,于是直接寻找ai XOR l 最大异或与最小异或,只要他们分别等于l,r。即可证明ai中每一个数都在[l,r]之中,且互不相等,即可得到结果为ai XOR l。寻找最大最大最小异或对,则采用trie异或树来求解代码#include<bits/stdc++.h&gt

2022-03-28 12:43:57 577

原创 L2-021 点赞狂魔 (25 分)

L2-021 点赞狂魔 (25 分)代码#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod = 1e9 + 7;map<string ,int> mp;vector<pair<string,pair<int,int> > > st;bool cmp(pair<string ,pair<int,int> &g

2022-03-07 21:49:45 158

原创 L2-020 功夫传人 /L2-019 悄悄关注 (25 分)

L2-020 功夫传人 (25 分)代码#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod = 1e9 + 7;vector<vector<ll> > mp(100001);vector<int> st(100001);double ans = 0;ll n ;double tt, r; void dfs(int x, doubl

2022-03-07 21:22:00 125 1

原创 = L2-029 特立独行的幸福/L2-031 深入虎穴 (25 分)

一点小记局部解不是整体解,一定要等局部运行完,再找最优解L2-029 特立独行的幸福 (25 分)之前未等[n,m]跑完,就在范围内找解加入结果之中,有可能小值会变成大值而覆盖,例如 9 --> 81等#include<bits/stdc++.h>using namespace std;typedef pair<int,int> pii;vector<pii> st;int mp[10010] = {0};int cnn[10010] = {0

2022-03-07 09:20:36 187 2

原创 Mysql学习bug

Mysql1.注解 – 符号后面要加空格,不然不视为注解 报错;2.列名前面加空格,实践列名会变为空格 + 列名。

2022-02-28 13:07:10 217

原创 竞赛头文件板子(数学)

竞赛头文件板子(数学)#include<iostream>#include<algorithm>#include<cstring>#include<cmath>#include<vector>#include<queue>#include<stack>#include<map>#include<set>#define INF 0x3f3f3f3f#define pb push_b

2022-01-18 17:50:10 138 1

原创 背包小记(01,完全,多重,分组)

背包小记01背包概述:给你 nnn 个物品,每个物品的价值为 wiw_iwi​ ,现在给你一个mmm容量的背包 , 每个物品可以选择要或者不要,问在背包容量下最大物品价值状态方程二维状态方程:dp[i][j]=max(dp[i−1][j],dp[i−1][j−v[i]]+w[i])dp[i][j] = max(dp[i-1][j],dp[i-1][j-v[i]]+w[i])dp[i][j]=max(dp[i−1][j],dp[i−1][j−v[i]]+w[i])**一维状态方程:dp[j]=m

2022-01-12 22:58:39 206 1

原创 矩阵快速幂

矩阵快速幂对于n方阵的矩阵快速幂#include<bits/stdc++.h>#include<vector>using namespace std;typedef long long ll;const int mod = 1e9 + 7;vector<vector<int> > mul(vector<vector<int> > a,vector<vector<int> > b){ vect

2022-01-11 22:24:27 216

原创 Robot Cleaner Revisit(CF)

Codeforces Round #763 (Div. 2)D. Robot Cleaner Revisit题目链接:https://codeforces.com/contest/1623/problem/D解题代码来自于cf某大佬 :By AlanSkarica;思路:由于最多只有n∗*∗m个点,所以循环的点最多n∗*∗m个,又因为边缘只有两种状态,顶点只有一种状态,故共有4(m-1)(n-1)种状态点,且4(m-1)(n-1)一定是环的边长的整数倍,对于每k种状态x1,x2…xk,每个状态可能

2022-01-08 17:55:25 270

原创 排列奇偶性与排序的关系

排列奇偶性与排序的关系排列奇偶性定义:对于一个排列而已,如果它的逆序对为奇数,称为奇排列;反之称为偶排列对于其中任意两个数交换造成的结果:排列奇偶性发生变化(线性代数知识,很好思考),逆序对+1/-1对于其中三个数交换,即i->j->k->i,实际相当于做两次两个数交换(i,k)交换,(k,j)再交换,最终结果:排列奇偶性不发生改变,因为交换一次奇偶性改变,再交换一次再改变一次,即奇偶性不发生变化,逆序对+2/-2/+0排序:已经按小到大排序完的排列逆序对为0,若采用三个数交

2021-12-13 23:13:46 3043

原创 图的部分操作

6-1 采用邻接表创建无向图 (20 分)6-2 采用邻接矩阵表示法创建无向图 (20 分)6-3 基于邻接矩阵表示的广度优先遍历 (20 分)6-4 邻接矩阵存储图的深度优先遍历 (20 分)6-5 求采用邻接矩阵作为存储结构的有向图各顶点的出度 (6 分)6-6 基于邻接表表示的广度优先遍历 (20 分)6-7 统计有向图中各顶点的入度 (10 分)6-8 邻接表存储图的广度优先遍历 (20 分)6-9 实现基于邻接矩阵表示的深度优先遍历 (20 分)6-10 最小生成树(普里姆算法)

2021-12-13 22:56:46 1143 4

原创 L2-008 最长对称子串 (25 分)

哈希寻找字符串 最长对称子串题目链接#include<iostream>#include<algorithm>using namespace std;typedef unsigned long long ull;const int K = 131;ull q[1010],p[1010],s[1010];int main(){ string str; getline(cin,str);// cin>>str; p[0] = 1; q[0]

2021-12-09 16:37:50 792 1

原创 负数越界(血的教训)

负数越界为正

2021-12-06 23:23:20 174

原创 使用freopen后cin出现问题

使用freopen重定向输入流后cin出现问题的解决方案造数据需要读文件,图方便直接用了freopen重定向输入流,可是后面发现还要切换回控制台输入。于是查资料。发现大多博客都介绍用freopen(“CON”, “r”, stdin); 这句来改回去,可是实际测试中发现使用了之后scanf是正常读入了,cin却不行。灵光一现想到用cin.clear()清空一下输入流试试,果然可以了...

2021-12-01 22:08:02 1270

原创 vector排序

vector的cmp#include<bits/stdc++.h>using namespace std;int n;vector<string> q;int k = 0;bool cmp(string a , string b){ int len1 = a.length() , len2 = b.length(); int i = 0; for( ; i < len1 && i < len2 ; i ++ ){

2021-11-20 20:59:34 512

原创 全排列(dfs基础)

全排列题目:输出n的全排列代码:#include<bits/stdc++.h>using namespace std;int q[10];int s[10];int n;void dfs(int k){ if(k == n){ for(int i = 0 ; i < n ; i ++) cout<<s[i]<<" "; cout<<endl; return; }

2021-11-20 19:41:53 692 1

原创 二叉树四种遍历法

二叉树四种遍历法#include<bits/stdc++.h>#include<malloc.h>using namespace std;typedef struct BiNode{ char data; struct BiNode *lchild,*rchild;}BiTNode,*BiTree;void CreateBiTree(BiTree &T);//根据输入的字符串,创建二叉树。 void PreOrder(BiTree T);//

2021-11-16 21:38:07 141

原创 bfs板子题

bfs板子题题目:#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef pair<int,int> PII;const int N = 20;char s[N][N];int t[N][N];int x[10] = {0,1,0,-1,1,1,-1,-1};int y[10] = {1,0,-1,0,1,-1,1,-1};int bfs(int a , int b)

2021-11-14 22:38:55 489 1

原创 树的三种遍历递归与非递归法和叶子分支节点高度

6-3 二叉树的非递归遍历 (25 分)6-2 是否二叉搜索树 (25 分)6-7 二叉树的分支结点数* (20 分)6-6 二叉树的叶子结点数* (20 分)6-5 二叉树的结点数* (20 分)6-1 求二叉树高度 (20 分)L2-006 树的遍历 (25 分)

2021-11-11 23:09:14 171 1

原创 牛客—— [USACO 2007 Jan S] Protecting the Flowers(贪心)

[USACO 2007 Jan S] Protecting the Flowers题目链接:https://ac.nowcoder.com/acm/problem/25043#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N = 2e6 + 10;struct cow{ int t,d; double s;}q[N];bool cmp(cow a, cow

2021-11-11 13:18:43 204

原创 牛客-铺地毯(简单思维题)

铺地毯题目链接https://ac.nowcoder.com/acm/problem/16593#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N = 1e6 + 10;struct area{ int a , b , x , y; }q[N];int main(){ int n; scanf("%d",&n); for(int i

2021-11-11 09:35:15 195

原创 牛客-主持人的烦恼(简单贪心)

主持人的烦恼(简单贪心)https://ac.nowcoder.com/acm/problem/13591#include<bits/stdc++.h>using namespace std;const int N = 1e5 + 10;int n,m;int main(){ while(cin>>n>>m){ int q[N],s[N]; for(int i = 0 ; i < n ; i ++) cin>&gt

2021-11-09 20:14:39 297

原创 7-1 串的模式匹配(KMP解法和strstr解法)

串的模式匹配题目KMP解法strstr解法:题目KMP解法#include<bits/stdc++.h>using namespace std;char s[1000010],q[100010];int ne[100010];int n;int main(){ cin>>s+1>>n; while(n--){ cin>>q + 1; ne[1] = -1; for(int i = 2 , j = 0 ; q[i]

2021-11-09 09:51:14 638 1

原创 SICNU ACM新生第一次考核

题目A.最近距离(签到题)题目思路:代码:B.这是一道特别简单的题目(简单数学题)题目:思路:代码:C.M78星云的字符转换(基础题)题目:思路:代码:D.M78星云的排队事故(前缀和板子题)题目:思路:代码:F.不服气的洁洁学姐(gcd)题目:思路:代码:E.来自M78星云的小测试(进制转换+回文)题目:思路:代码:G.来自M78星云的减法运算题目:思路:python解法(最简单的解法):代码:c/c++解法(大模拟):代码:A.最近距离(签到题)题目思路:只需要判断AB直线是否垂直坐标轴且F点

2021-11-07 17:00:14 1383 1

原创 括号匹配顺序栈

#include <iostream>#include "ac.h"using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char** argv) { stack head ; while(1){ printf("1.创建栈\n"); print

2021-10-18 21:37:11 117 1

原创 双向链表(项目建立写法,只含增删查改)

#include <iostream>#include "ac.h" /* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char** argv) { Node *head; while(1){ printf("1.创建链表\n"); printf("2.插入结点\n"); print

2021-10-11 20:26:32 69

原创 PTA 1004 Counting Leaves(树的深搜)

1004 Counting Leaves (30 分)题目 **1004 Counting Leaves (30 分)**A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.Input Specification:Each input file contains one test case

2021-09-28 20:53:41 119

原创 private与构造方法

Java 笔记Javab笔记Java 笔记private 的作用构造函数无参数的构造函数带参数的构造函数代码private 的作用private主要用来封装,使其他对象不能直接调用查看修改此对象里的对象元素,必须是以此对象的方法来改变或查看对象元素,构造函数无参数的构造函数Java语言自带无参数的构造方法,但若是重写了构造函数,则不能使用自带的无参数构造方法,必须自己重写无参数的构造方法带参数的构造函数为new的对象赋值代码构造方法与privatepackage Student1;

2021-09-28 16:49:54 807

原创 图论算法之最短路问题

图论算法之最短路问题最短路图论算法之最短路问题Bellman-Ford算法思路特点例题代码spfa算法特点思路例题代码Floyd算法特点思路例题代码Bellman-Ford算法思路所有的边进行n-1轮松弛,因为在一个含有n个顶点的图中,任意两点之间的最短路径最多包含n-1条边。换句话说,第1轮在对所有的边进行松弛操作后,得到从1号顶点只能经过一条边到达其余各定点的最短路径长度,第2轮在对所有的边进行松弛操作后,得到从1号顶点只能经过两条边到达其余各定点的最短路径长度,…特点单源最短路算法,可求含

2021-08-21 19:30:52 154

原创 n皇后问题(回溯法)

n皇后问题(回溯法)n皇后问题链接https://www.acwing.com/problem/content/description/845/题目:n−皇后问题是指将 n 个皇后放在 n×n 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。现在给定整数 n,请你输出所有的满足条件的棋子摆法。方法一思路:用一个col数组来表示每一列皇后是否存在皇后,sg数组来表示正对角线是否存在皇后,ng表示反对角线是否存在有皇后。对每一列进行判断搜索每一行是否可

2021-08-14 21:48:11 235

原创 二叉树知识点

二叉树树一,定义:树是一种数据结构,它是由n(n>=1)个有限结点组成一个具有层次关系的集合。二,树具有的特点有:(1)每个结点有零个或多个子结点(2)没有父节点的结点称为根节点(3)每一个非根结点有且只有一个父节点(4)除了根结点外,每个子结点可以分为多个不相交的子树。三,树的基本关系:若一个结点有子树,那么该结点称为子树根的“双亲”,子树的根称为该结点的“孩子”。有相同双亲的结点互为“兄弟”。一个结点的所有子树上的任何结点都是该结点的后裔。从根结点到某个结点的路径上的所有结点都是

2021-08-07 19:54:38 171

原创 Codeforces Round #736 (Div. 2)(A,B,C题解)

Codeforces Round #736 (Div. 2)(A,B,C题解)A. Gregor and CryptographyA. Gregor and Cryptographytime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputGregor is learning about RSA cryptography, and although h

2021-08-02 22:31:05 471 3

原创 Educational Codeforces Round 112 (Rated for Div. 2)A,B,C题解(cf1555a-1555c)

Educational Codeforces Round 112 (Rated for Div. 2)A,B,C题解A.PizzaForcesA. PizzaForcestime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputPizzaForces is Petya’s favorite pizzeria. PizzaForces makes an

2021-07-31 09:27:39 245

原创 dijkstra算法

dijkstra心得:1.图论算法比较重实践而非证明,我们该着重掌握如何从题目中抽象出点边,而非纠结如何证明2.dijkstra算法是一种单源最短路算法,适用于边权为正的情况代码基本思路:1.将所有点与点间距离赋值为无穷(类似memset(g,0x3f3f3f3f,sizeof g))。2.用dist[i]表示i节点到源点的距离,初始化为无穷。3.用一个s储存所有已确定最短路的点。4.每次寻找未确定点中离源点权值和最小的点t。5.用t来更新所有节点到源点的距离(比较dist[i]与dist

2021-07-24 19:02:03 249

原创 哈希表基础(板子)

字符串哈希思路:字符串中的每个字符都对应着唯一的acsii码如下图可见每个字符对应都是唯一且确定的,因此可以将每个字符映射成ascii码对应的数字,这样字符串就可以看作一个n进制的数字(通常这里的n我们取131或者1331),这个n进制的数就表示字符串的值,同时也映射着这个字符串,于是通过比较数字是否相同可以判断字符串是否相同代码:#include<bits/stdc++.h>using namespace std;typedef unsigned long long ul

2021-05-23 19:26:46 184

原创 web学习

web学习日志话不多说上代码```html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>表单</title></head><body&gt

2021-04-12 20:17:23 113

原创 C语言学生成绩管理系统(源代码)

学生成绩管理系统功能介绍学生成绩管理系统1.基本思想1.结构体塑造数据:2.文件操作:1.读取文本2.替换文本3.文件末尾添加3.排名功能2.查询功能1.学号查询2.学号查询3.排名查询4.输出模块3.删除功能1.删除主页面2.学号查找删除3.姓名查找删除4.排名查找删除5.修改功能6.完整代码1.基本思想1.结构体塑造数据:实现学生信息的绑定通常需要使用结构体来绑定,如下图所示:使用结构体成功的将姓名、学号、性别、排名、各科成绩绑定在我定义的stu数组中。/*结构体塑造数据*/struct s

2021-02-20 19:57:13 1679

空空如也

空空如也

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

TA关注的人

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