自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 求无序数组的第K(大/小)数的三种方法

题目描述:给定一个无序数组(长度为n)和一个正整数 K,让你求此数组中第K大的数方法1:最简单的思路,你肯定会想到 先把数组排序,然后再取下标为K的对应数组元素。这种方法肯定是可行的,但是这种方法无端的对咱们不需要查找的元素也进行了处理,在一定程度上增加了算法的消耗!这样是不值得的!此方法的平均时间复杂度为O(n*logn).方法2:利用堆调整算法的性质,建立一个大小为K的堆,然后将整个数...

2018-08-29 19:35:56 8511 4

原创 hdu 5510 Bazinga 思路详解 kmp +思维

    经过了计算理论的魔鬼洗礼,感觉脑子都不太好使了!!赶紧找找以前做过的题目提提神!!!好久没看过KMP算法了!来分享一道以前打区域赛的时候碰着的题目吧!(废话有点多- _-')题目描述:给定若干个字符串,从前往后依次排列,一次编号为1-N,要求找到一个下标最大的字符串i,这个字符串满足的条件是,在这之前的存在一个字符串不是他的子串。求解思路:这个题其实跟KMP没多大关系,匹配算法的效率影响不...

2018-05-11 14:46:02 248

原创 hdu 1423 Greatest Common Increasing Subsequence 题解

题目描述:给定两个数字数组a[ ],b[ ],求两者的最长上升公共子序列 的长度思路: 根据题目描述,第一反应就是用动态规划的思路去做这道题,则问题的关键在于找到问题的重复子结构,从而构造出转移方程自底向上求解。 使用dp[i]代表以a数组中第i位元素为结尾的序列与b数组的最长公共子序列的长度。用locate记录每次以a[i]元素结尾,在 b数组中找比a[i]小并且dp值最大的地方。则动态转移方程...

2018-04-22 20:25:40 150

原创 2018年第九届蓝桥杯C/C++省赛A组题解

2018年第九届蓝桥杯C/C++省赛A组题解第一题:题意:就是求一个,首项为1,等比为1/2的等比数列的前二十项之和答案:就是2^20-1/2^19第二题:题意:求整个二十世纪总共有多少个星期一求解过程:当时灵机一动,打开电脑日历,查看了20世纪第一天是星期一(哈哈),然后算出整个二十世纪有25个闰年,所以总天数就是(365*100+25)/7 = 5217天。第三题题意:求解给定的数相乘得到的数...

2018-04-04 09:18:25 6581 6

原创 2019网易实习生招聘笔试题解 矩形重叠+数对个数+找工作

1,求区域中矩形最多重叠的个数题目网址:https://www.nowcoder.com/test/question/done?tid=14633045&qid=152611#summary解题思路:首先考虑暴力解,要想求得最大重叠区域,就遍历每个点最多在多少个矩形中出现,但是由于点坐标过大,肯定会超时。优化方法就是将所有矩形的横纵坐标存起来,求这些坐标组成的点最多在多少个矩形中出现,就可...

2018-03-31 10:39:01 543

原创 2019网易实习生笔试题解

1,求区域中矩形最多重叠的个数题目网址:https://www.nowcoder.com/test/question/done?tid=14633045&qid=152611#summary解题思路:首先考虑暴力解,要想求得最大重叠区域,就遍历每个点最多在多少个矩形中出现,但是由于点坐标过大,肯定会超时。优化方法就是将所有矩形的横纵坐标存起来,求这些坐标组成的点最多在多少个矩形...

2018-03-29 08:29:16 291

原创 Socket编程实现多人聊天室(c语言版)

socket编程花了我三四天的时间终于将这个程序给实现了!!!! 所谓的多人聊天室,其实不过是客户端创建一个数据接收线程和数据发送线程,而在服务器端创建一个套接字数组,开启一个接受连接请求线程,不断接受来自客户端的连接请求,然后将建立的连接所形成的新套接字描述符存进套接字数组,并针对所存储的套接字描述符建立多个数据接收线程,对于所接收到的数据,开启一个数据转发进程,对套接字数组中的每...

2017-11-30 16:32:16 24992 12

Socket编程实现多人聊天室(C语言版)

       socket编程花了我三四天的事件终于将这个程序给实现了      所谓的多人聊天室,其实不过是客户端创建一个数据接收线程和数据发送线程,而在服务器端创建一个套接字数组,开启一个接受连接请求线程,不断接受来自客户端的连接请求,然后将建立的连接所形成的新套接字描述符存进套接字数组,并针对所存储的套接字描述符建立多个数据接收线程,对于所接收到的数据,开启一个数据转发进程,对套接字...

2017-11-24 22:42:27 6496 2

原创 树莓派 摄像头安装配置

 在网上有不少树莓派安装配置摄像头的教程,但是或多或少有些错误的地方,本人综合尝试了几次后,发现如下步骤是没有问题的!! 摄像头是采用树莓派专用摄像头,将摄像头接线插入树莓派接线槽内后。需要对摄像头进行配置。 主要步骤如下:     1.打开终端,摄像头驱动所需要的库,依次输入执行以下命令行:sudo apt-get updatesudo apt-get i...

2017-07-15 10:54:47 744 3

原创 uva 129 困难串

因为在递归的过程中,总是选择最小的i,所以最先求到的解肯定是字典序最小的,我觉得这也是这道题用这个算法的原因,因为我觉得这个算法对减时没有什么卵用 :wink: [code="C++"]#include #include #include using namespace std;int L,n,cnt;int s[1010];int dfs(int cur)...

2016-03-19 20:05:43 132

原创 poj 3984 迷宫问题 BFS+栈的使用

#include <stdio.h>  #include <algorithm>  #include <string.h>  #include <queue>  #include <stack>  using namespace std;  int dir[]={-1,0,1,0};  ///上下左右四个移动方向int dil[]={0,...

2015-11-24 14:09:10 234

原创 neu 1438 Car race game 树状数组求解前缀和

#include <bits/stdc++.h>using namespace std;#define lowbit(i) i&(-i)const int N = 1000000 +10;int n,m,k,l,r;int a[N];int getsum(int i){ int xx = 0; while(i>0) { ...

2015-11-24 14:05:27 317

原创 zoj 1558 背包

[code="C++"]#include using namespace std;int num[8],dp[10000+10];int cmp(int x,int y){ return x>y;}int main(){ int t; scanf("%d",&t); while(t--) { for...

2015-11-09 16:18:18 91

原创 poj 2985 并查集+树状数组求第k大数

[code="C++"]#include #include #define lowbit(i) i&(-i)#define maxn 300000using namespace std;int a[maxn],c[maxn],p[maxn];int fd(int x){ return x==p[x] ? x :fd(p[x]);}void upda...

2015-11-05 16:53:13 161

原创 hihocoder 1078 线段树区域更新

[code="C++"]#include#include#includeusing namespace std;#define M 1000005struct tree{ int left,right,sum,lazy;};tree g[M];int map[M];void pushDown(int i){ if(g[i].lazy) {...

2015-11-05 15:17:37 100

原创 poj 3984 bfs+栈的使用

[code="C++"]#include #include #include #include #include using namespace std;int dir[]={-1,0,1,0};int dil[]={0,-1,0,1};int num[6][6];int visit[6][6];int d[30];struct node{...

2015-11-03 21:01:34 158

原创 kmp裸模版 poj 3461

[code="C++"]#include #include using namespace std;const int maxn = 1000000+10;char s[maxn],t[maxn];int next[maxn];int m,n,k,l,i,T;void get_next(char str[]){ memset(next,0,size...

2015-11-03 19:01:13 117

原创 hdu 5510 Bazinga 思路详解 kmp +思维

[size=large]来一发代码,先前后两两比较,如果前一个串是后一个串的字串,那他就是没必要的,假设第i个串是i+1的子串,如果在后面循环比较中,如果第i+1个串是后面串的子串,那i个串就没有比的必要了,如果第i+1不是后面串的子串,直接结束循环,查找结束,得出结果[/size][code="C++"]#include int next[10005];int T;c...

2015-11-01 19:32:41 147

原创 neu 1438 树状数组求逆序数

[code="C++"]#include using namespace std;#define lowbit(i) i&(-i)const int N = 1000000 +10;int n,m,k,l,r;int a[N];int getsum(int i){ int xx = 0; while(i>0) { xx...

2015-10-30 20:17:38 119

原创 poj 3468 树状数组

[color=darkred][u]http://kenby.iteye.com/blog/962159[/u][/color]///我只想存个代码,思路来源解法都是上面那个网站看的[code="C++"]#include #include using namespace std;const int N = 100000+10;long long det[N],num[...

2015-10-30 19:10:21 167

原创 hdu 1556 Color the ball 树状数组思路分析

[align=left][size=medium][color=red]网上很多博客都只给了代码,这对于很多刚接触树状数组的人来说往往一头雾水。我说一下主要思路:你每次更新一个点的时候(加一个数),后面所有的点的前缀和都会相应的加上这个数,这其实就相当于这个数受了这个点影响,你每次画一个点的时候,其实就相当于画了它后面所有的点,然后你把那些不必要画的点受的影响减回来就行[/color][/size...

2015-10-30 18:47:02 143

原创 树状数组求区间最值 hdu 1754

[size=large][color=red]原理:求和时c数组存的是相应区间的和,而在这c数组(mkx数组)求的是相应区间的最大值[/color][/size] [code="C++"]#include using namespace std;const int N = 400000+100;int n,m,k,l,r;int a[N];int mkx[N],num[...

2015-10-29 16:00:45 295

原创 hnu Cent Saving

代码如下:注释部分为思路讲解[code="C++"] ///hnu Cent Saving#include #include #include using namespace std; const int N = 2000, D = 20;const int infty = 0xfffffff; int Prize[N];int Cost[N+1][...

2015-08-03 09:12:23 166

原创 hdu 1423 Greatest Common Increasing Subsequence 题解

[code="C++"]#include #include #include #include #include using namespace std;int dp[550];int T;int a[550],b[550];int main(){ scanf("%d",&T); int m,n; while(T--) ...

2015-07-25 20:38:11 206

空空如也

空空如也

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

TA关注的人

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