自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 问答 (1)
  • 收藏
  • 关注

原创 Vue v-slot(插槽)实现简单的弹窗

Vue v-slot(插槽)的使用

2022-11-09 18:25:30 599 1

原创 Visual Studio 2022 C++连接MySql数据库(win7和win10亲测有效)

dalao的文件配置教程<----点这里按照上面的教程配置文件后,还有可能出现另一个问题(win7和win10均出现该问题),“由于找不到libmysql.dll,无法继续执行代码。重新安装程序可能会解决此问题。”libmysql.dll文件是MySQL的动态链接库文件,缺少此文件数据库无法正常工作解决方法找到mysql的安装目录//这是我的安装路径(1)C:\Program Files\MySQL\MySQL Server 8.0\lib复制lib文件夹下有个libmysql.d

2021-11-28 10:32:33 6654 2

原创 洛谷 P3378 【模板】堆

洛谷 P3378 【模板】堆洛谷 P3378 【模板】堆菜鸟生成记(90)复习一下数据结构的堆排序,顺带复习一下堆,在洛谷找个板子题练一下,还行;这一题还可以用优先队列priorityqueue,STL yyds[手写堆]#include<iostream>#include<stdio.h>using namespace std;const int N=1e6+10;int a[N];void heap1(int *a,int rt,int n) {//删除堆顶

2021-11-17 09:54:03 449

原创 洛谷 P7199 [COCI2019-2020#1] Trol

菜鸟生成记(89)P7199 COCI2019-2020#1 Trol//package OJ;import java.util.Scanner;public class Main { /* 这是个找规律的题 先暴力打表,发现规律 1~2^60得到的序列为1~9的循环 1,2,3,4,5,6,7,8,9 先找出整区间(n个1~9的循环序列组成)求和 然后再对左右断区间(不是1~9的整序列)求和

2021-09-12 18:41:29 235

原创 2366: 信息学奥赛一本通T1456-图书管理(hash 或者红黑树)

菜鸟生成记(88)2366: 信息学奥赛一本通T1456-图书管理这一题就是红黑树和哈希表的模板题;Java,C++中都提供了红黑树和哈希表的类不过原理还是要懂的,红黑树和哈希表的原理很简单,但是实现有点难,这里我就只写一下哈希表(红黑树太难了)哈希表//哈希表/* code=(code*28971+x[i])%24593;//哈希函数 */#include<bits/stdc++.h>using namespace std;const int N=3e5;vector

2021-09-12 12:15:05 518

原创 PIPI OJ 1043: 数学王子(高精度加法+乘法+除法)Java代码

菜鸟生成记(87)1043: 数学王子不得不说,Java的JDK是真的强,高精度运算轻松搞定!package OJ;import java.math.BigInteger;import java.util.Scanner;public class OJ_32 { public static void main(String[] args) { Scanner cin=new Scanner(System.in); int t=cin.nextInt(

2021-08-21 13:47:30 160

原创 C++ 多继承,多个父类函数重名,子类对象准确区分调用

菜鸟生成记(86)Java不支持多继承(一个子类继承多个父类),因为Java没法区分父类;C++支持多继承,C++可以域运算符(::)区分父类/*C继承了A,B;A,B,C类中都m()函数*/#include<iostream>using namespace std;class A{ public: void m(){ cout<<"A::m()"<<endl; }};class B{ public: void m(){ cout&

2021-08-20 19:36:36 2068

原创 Java ArrayList,Vector与C++vector集合的区别

菜鸟生成记(85)Java ArrayList和Vector集合使用方法大致相同,就不列举Vector了/*************ArrayList错误嵌套使用方法***************/ ArrayList<ArrayList<Integer>> arr=new ArrayList<>(); ArrayList<Integer> t=new ArrayList<>(); t.add(1

2021-08-15 18:45:59 504

原创 DOS g++ main.cpp:(.text+0x15): undefined reference to `node::node()‘原因和解决方法

菜鸟生成记(84)main.cpp:(.text+0x15): undefined reference to `node::node()’main.cpp:(.text+0x15):未定义对“node::node()”的引用最近用DOS命令编译C++文件出现的问题文件:main.cpp(main函数所在文件)#include<iostream>#include"node.h"using namespace std;int main(){ node t; t.in();}

2021-07-27 17:50:42 634

原创 Eclipse 设置背景+代码风格(懒人设置方案)

菜鸟生成记(83)操作步骤菜单栏Window->preferences->General->Appearance->(Theme和Color and Fnt theme下拉框)->(Dark和Classic Theme (current))这是背景+代码风格

2021-07-22 17:48:51 307

原创 C++创建构造函数带参数的对象数组(构造函数初始化列表)

菜鸟生成记(82)创建构造函数带参数的对象数组(构造函数初始化列表)#include<iostream>using namespace std;class node{//声明 public: node(int a,int b); ~node(); void print(); private: int x,y; };//定义 node::node(int a=0,int b=0):x(a),y(b){//构造函数用初始化列表,同时要给予默认值 //a=0,b

2021-07-12 09:45:40 6011 1

原创 C++面向对象

菜鸟生成记(81)C++面向对象编程太无聊了,太枯燥了;慢慢学吧!先写一些喜欢的代码(邪恶的笑容!)/**重载运算符,简单用法;结构体排序时也可以通过重载运算符实现(后续更)**/#include<iostream>using namespace std;class Girl{ private: int height; int width; char cup; long long money; string birthday; public: Girl(

2021-07-03 15:10:58 250

原创 PIPI OJ 1364: 删除给定值的叶子节点

菜鸟生成记(80)1364: 删除给定值的叶子节点这一题有点考验数据结构基础功底,删除几个节点就把我难住了,指针总是出错;最终从学长那里学了一个逻辑删除(没有真的删除节点,只是逻辑上删除节点,物理上节点还在);这玩意儿不用删除节点操作,操作安全#include<stdio.h>#include<iostream>using namespace std;typedef struct node{ int data;//数据域 int flag;//删除标记 stru

2021-07-01 17:55:30 150

原创 C++中缀表达式 转 后缀表达式(求值)

输入:变量名(单个字符)和变量值再输入中缀表达式,然后求值输入a 1b 2c 3d 4e 5a+d*(b*(c+d)-e)//1+4*(2*(3+4)-5)输出37#include<stdio.h>#include<string.h>#include<ctype.h>#define N 100struct st{ char name; int value;};int find(st s[],char x){//变量名查询变量值

2021-06-29 16:33:53 1069

原创 PIPI OJ 1187: 子序列问题III(前缀和+二分查找)

1187: 子序列问题III菜鸟生成记(78)PIPIOJ上面有三道题意说明一模一样,但是数据范围不一样,三个不同的难度梯度子序列问题I 1000 (1e3) O(n^3)的纯暴力即可解决子序列问题II 10000 (1e4) O(n^2)前缀和预处理,优化区间求和子序列问题III 100000 (1e5) O(n*log2n)前缀和预处理,优化区间求和,二分查找优化查找(lower_bound,或者手写不等值二分查找)#include<iostream>#include<a

2021-06-23 15:33:44 199

原创 1186: 子序列问题II(前缀和)

1186: 子序列问题II菜鸟生成记(77)水题,不过要加一点点的优化;纯暴力O(n^3),前缀和预处理一下,O(n*n)#include<iostream>#include<cstring>using namespace std;int a[11000];int main(){ int n,s; while(cin>>n>>s) { int len1=20000; memset(a,0,sizeof(a)); for(int

2021-06-23 14:03:40 186

原创 数据结构 链表 (创建(前插+后插)和遍历)

菜鸟生成记(76)数据结构的基本,链表都快忘了,复习一下前插建表#include<bits/stdc++.h>using namespace std;typedef struct st{ int num;//数据 struct st *next; //构造函数:指针初始化,赋空 st(){next=NULL;}}node;int main(){ int num; struct st *q;//动态节点 struct st *p;//动态节点 struct

2021-06-18 17:56:38 172

原创 PIPI OJ 1203: PIPI发工资(拓扑排序)

1203: PIPI发工资菜鸟生成记(75)主思路:题中提到了,a,b为上下级关系,a的工资要高于b,结合样例2 21 22 1-1这一题需要拓扑排序;同时要反向建建(正向错误75%,最下面解释,正向建边的错误之处)#include<bits/stdc++.h>using namespace std;const int N=2e4;int n,m;vector<int>e[N];int in1[N];queue<pair<int,int>

2021-06-16 11:40:35 359 1

原创 PIPI OJ 1273: 三个有序数组的交集

菜鸟生成记(74)每周一水这道早就写过了,一直卡着(以前蒻羁不会STL),这一下痛快了1273: 三个有序数组的交集#include<bits/stdc++.h>using namespace std;map<int,int>s1,s2,s3;int main(){ int a,b,c,x; cin>>a>>b>>c;//1<=a,b,c<=1e5; int max1=0; //三个数组元素的范围不确定,题上没

2021-06-14 14:35:32 168

原创 洛谷 P1022 [NOIP2000 普及组] 计算器的改良(模拟+面向样例编程)

P1022 NOIP2000 普及组 计算器的改良菜鸟生成记(73)面向样例编程,我是专业的,if,if,else,特判,特判,再特判#include<iostream>#include<string>#include<cstdio>using namespace std;const int N=1e4+100;int vis[N]={0};void fun(string &num,int t,int &x,int &sum).

2021-06-09 13:55:25 191

原创 PIPI OJ 1059: PIPI的目标Ⅳ(unordered_map or map)

菜鸟生成记(72)1059: PIPI的目标Ⅳ这又是一个暴力题,不过需要那么一点点优化,用map或unordered_map优化一下查找,n<=1000,纯暴力O(n^4), 小优一点就过了本题就是一个实例,unordered_map在发生地址冲突时,效率会大打折扣#include<iostream>#include<algorithm>#include <tr1/unordered_map>using std::tr1::unordered_map;

2021-06-08 15:27:35 106 2

原创 洛谷 P1010 [NOIP1998 普及组] 幂次方(递归套娃)

菜鸟生成记(71)对代码失去兴趣的第N天,写个水题提升一下兴致;模拟,递归套娃,if套ifC语言 log2n表示:log(n)/log(2)#include <iostream>#include<cstdio>#include<cmath>using namespace std;void fun(int y){ int x=y,flag=0; while(x>=1) { y=log(x)/log(2);//2^y; if(y>1

2021-06-07 14:01:26 250

原创 PIPI OJ 1458: 区间问题 (前缀和)

菜鸟生成记(70)这一题隶属于(简单题),但是蒻羁3天硬是没写出来,最后在问答区求得dalao的详细解答.大佬的题解差距太大了,还需苦修啊代码(理解中…)#include<bits/stdc++.h>using namespace std;const int N = 1e6+5;long long a[N];int main(){ int n; cin>>n; map<long long,long long>mp; ll ans=0,sum=0

2021-05-31 18:39:20 91 2

原创 洛谷 P1255 数楼梯(斐波那契数列+高精度加法)

菜鸟生成记(69)P1255 数楼梯由题意得:求斐波那契数列第n项;0<=n<=5000;数列的第94项左右就已经超出long long 的数据范围了,所以只能用高精度加法#include<iostream>#include<cstring>using namespace std;const int N=5e3+100;const int M=1e3+100;struct st{ int a[M];//储存大数(超出long long) int l

2021-05-28 20:41:12 609

原创 洛谷 P2853 [USACO06DEC]Cow Picnic S(有向图反向建边)

P2853 USACO06DEC Cow Picnic S与这一题思路大致相同的洛谷题目(有向图反向建边)P1629 邮递员送信P3916 图的遍历这些题目都有一个共同点:让你看一眼就能想出一个暴力的解法,然后提交就超时;#include<iostream>#include<cstring>#include<vector>#include<queue>#include<map>using namespace std;const

2021-05-18 18:35:16 284

原创 题目 2447: [信息学奥赛一本通-T1541]数列区间最大值(线段树)

题目 2447: 信息学奥赛一本通-T1541数列区间最大值菜鸟生成记(67)线段树求区间最大值不过这个判题机有点儿坑,scanf,printf都过不了,必须"开挂"才行AC代码(输入输出加速挂)#include<stdio.h>#define N 100100#define max(x,y) x>y?x:y#define inf ((1<<32)-1) //int最大值 int arr[N];int tree[4*N];//4倍空间 int n,m;v

2021-05-16 23:29:05 242

原创 题目 2441: [信息学奥赛一本通-T1535]数列操作(线段树)

题目 2441: 信息学奥赛一本通-T1535数列操作菜鸟生成记(66)线段树入门模板题线段树构造+单点修改+区间求和#include<iostream>#include<cstdio>using namespace std;const int N=1e5+100;long long arr[N];long long tree[4*N];//线段树数组的长度最好略大于arr数组长度的4倍(当结论记住,不予证明了,蒻羁不会T_T)int n,m;void buli

2021-05-16 22:58:53 218

原创 线段树(初级实现)未完待续...

菜鸟生成记(65)最近在B站上看一位UP主的视频,茅塞顿开,突然理解了线段树的构造原理和构造方法,以及一些简单的算法(1)线段树的构造,(2)线段树单点修改值,(3)线段树区间求和UP主 : 正月点灯笼UP主 线段树入门详解#include<iostream>#include<algorithm>using namespace std;const int N=1e2+10;int arr[N]={1,3,5,7,9,11};//线段树基于的数组int tree

2021-05-16 21:05:42 109

原创 洛谷 P1496 火烧赤壁

菜鸟生成记(64)一道区间模拟题,唯一的坑点,不特判的话区间会重复累加思路:将n个区间的左右界点存入结构体数组中排序,第一优先排序 左界点,第优先排序 右界点//重载运算符比自定义比较函数排序快一些bool operator<(const st &p)const {//重载<,使两个结构体可以比较大小 if(a!=p.a)//左界点不相等 return a<p.a;//按左界点升序(从小到大),右界点不再比较 else//左界点相等 return b<p.b

2021-05-15 09:49:28 325

原创 洛谷 P1807 最长路(单源最长路径)

菜鸟生成记(63)P1807 最长路这一题可以叫做 单源最长路径模板题;Dijkstra+优先队列(小根堆,边权最大的放在队首)#include<iostream>#include<queue>#include<vector>using namespace std;const int N=2e3+10;int n,m;struct st{ int to; int w; bool operator<(const st &a)const

2021-05-13 16:05:37 808 1

原创 洛谷 P4779 【模板】单源最短路径(标准版)

菜鸟生成记(62)又双叒叕是模板题,不过这一题只能用Dijkstra模板,spfa只能得32分;没有负边权的,八成都要卡spfa;#include<bits/stdc++.h>using namespace std;const int N=2e5+10,inf=(1<<31)-1;//int最大值 int vis[N]={0};//标记数组 int dis[N]={0};//储存到每个点的动态距离 struct st{ int to; int w; bool op

2021-05-12 22:06:09 98

原创 洛谷 P1090 [NOIP2004 提高组] 合并果子(优先队列&&哈夫曼树的构造原理)

@P1090 NOIP2004 提高组 合并果子 菜鸟生成记(61)n堆糖果合为一堆,代价最小(哈夫曼树构造)n<=10000;数据不是很大,可以用vector< int >动态保持数组升序或降序,模拟优先队列;数据再大一些vector就很容易超时->堆石子AC vector#include<bits/stdc++.h>using namespace std;int main(){ int n,x; long long sum=0; vec

2021-05-12 18:18:38 207

原创 洛谷 P2872 [USACO07DEC]Building Roads S(最小生成树)

菜鸟生成记(60)这一题就是最小生成树绕了一个小弯,模板题:直接给出结点数和边数;以及边的两个顶点和边权;这一题:给出n个坐标(x,y),这n个坐标就代表n个结点;通过两点间的距离公式sqrt(pow(x1-x2,2)+pow(y1-y2,2))求出每个点其他结点的距离(边权);然后按边权的升序把这些边排序;然后选取n-1个边构成最小生成树#include<iostream>#include<algorithm>#include<cmath>#include

2021-05-11 22:16:40 165

原创 PIPI OJ 1143: 堆石子(priority_queue优先队列应用)

菜鸟生成记(59)1143: 堆石子优先队列参考—>这里这一题大致思路和构造 【哈夫曼树】的思路很像;将n个石堆合并成一堆;就像构造哈夫曼树中将n个结点加入到一棵树中(代价最小);1e5的数据;第一次用vector写的直接超时75%,又在洛谷上求助了一下dalao,然后找到了这个数据结构–priority_queue优先队列AC代码#include<iostream>#include<queue>using namespace std;priority_que

2021-05-10 18:07:08 127 4

原创 洛谷 P4305 [JLOI2011]不重复数字(unordered_map(哈希表))

菜鸟生成记(58)P4305 不重复数字一道STL练习水题这一道题的题意很适合map,但是数据太大了O(lngn)的查找效率也有点儿力不从心;O(lngn)都不行的话,那只能用哈希表查找了;unordered_map理论查找效率O(1)#include<iostream>#include<cstring>#include<cstdio>#include<tr1/unordered_map>//奇怪的头文件using std::tr1::uno

2021-05-07 21:43:11 488

原创 PIPI OJ 1334: PIPI计数(unordered_map的应用)

菜鸟生成记(57)1334: PIPI计数本以为就是一个简单STL查找的水题,谁曾想被卡卡时间了用map+输入输出挂 超时20%;map都超时了,很显然不是让用map,而是比map查找效率更高的数据结构;map内置数据结构为红黑树查找和储存效率O(logn);unordered_map内置数据结构为哈希表(散列表);哈希函数选的好的话,散列地址不大量冲突的话,储存效率O(1),也就是常量级;查找应该也是O(1);那这效率就很可观了(这好的数据结构不是蒻羁想到,是我在洛谷上从dalao那问来的)u

2021-05-07 11:51:35 397

原创 洛谷 P1957 口算练习题(字符串操作)

菜鸟生成记(56)P1957 口算练习题快乐的水题;暴力模拟#include<iostream>#include<stdio.h>//使用printf,scanf,一定要加头文件,不然判题不知道,printf,scanf来源;下线编译器可以通过,但是判题姬,就不一定了#include<algorithm>#include<sstream>//stringstreamusing namespace std;const int N=1e4+10;

2021-05-06 12:47:12 365

原创 洛谷 P5318 【深基18.例3】查找文献(图的遍历DFS BFS)

菜鸟生成记(55)这是一个dfs和bfs的模板题,但是洛谷的出题人就喜欢在模板题上挖坑;写了一大堆文字就为隐藏两个坑(1):n(节点数)<=1e5;5000左右用邻接矩阵就会爆栈,所以只能用邻接表存图;这个坑我没踩(因为以前踩得多了,长记性了)(2)一个节点连接多个,从该点遍历时先遍历编号小的;(这个坑踩到,大意了,看了一眼样例输入输出就直接写了,然后就全W了)#include <iostream>#include<vector>#include<queue&

2021-05-04 21:28:06 386

原创 洛谷 P1449 后缀表达式(栈 STL stack)

菜鸟生成记(54)首先了解一下后缀表达式这里–>(大佬博客)很详细;通过这一题又学到一个知识点–后缀表达式后缀表达式理解后这一题就简单多了,STL大法暴力模拟;#include <iostream>#include<vector>#include<string>#include <stack>#include <algorithm>using namespace std;int fun(string s)//判断纯数字

2021-05-04 20:30:59 256

原创 洛谷 P1102 A-B 数对(map)

菜鸟生成记(53)这一题归类于二分查找,但是map也是可以胜任的(map的树形查找和二分的树形查找,效率应该都是O(lg2n))#include<iostream>#include<cmath>#include<map>using namespace std;int main(){//map自动排序,默认升序 int n; long long A,C,A_num=0; long long ans=0,sum=0;//sum必须是long long,不然

2021-05-04 11:10:34 270

空空如也

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

TA关注的人

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