`
文章列表
1,求区域中矩形最多重叠的个数 题目网址:https://www.nowcoder.com/test/question/done?tid=14633045&qid=152611#summary 解题思路:首先考虑暴力解,要想求得最大重叠区域,就遍历每个点最多在多少个矩形中出现,但是由于点坐标过大, ...
       socket编程花了我三四天的事件终于将这个程序给实现了       所谓的多人聊天室,其实不过是客户端创建一个数据接收线程和数据发送线程,而在服务器端创建一个套接字数组,开启一个接受连接请求线程,不断接 ...
  在网上有不少树莓派安装配置摄像头的教程,但是或多或少有些错误的地方,本人综合尝试了几次后,发现如下步骤是没有问题的!!   摄像头是采用树莓派专用摄像头,将摄像头接线插入树莓派接线槽内后。需要对摄像头进行配置。   主要步骤如下:       1.打开终端,摄像头驱动所需要的库,依次输入执行以下命令行: sudo apt-get update sudo apt-get install subversion sudo apt-get install libjpeg8-dev sudo apt-get install imagemagick sudo apt-get ...
大学前三年用C++比了三年赛,什么项目也没做过!Java基本没学。最后一年玩的很嗨,之前的ACM的东西也差不多忘得一干二净。现在到研究生阶段跟个小学生一样从头学起,唉,都是自己作的啊! 话归正传,对于HashMap类来说,我发现Java中的类和C的结构体很像啊!我在学这个类的get方法时,在写那个Object user = new User();//创建一个对象之前写的是User  user = new User();结果一直错误!后面发现是因为这个地方只能创建一个对象而不是用User去创建一个实例。这会不会也在隐约告诉我对象和实例的区别呢??有待思考! package com.xuex ...

uva 129 困难串

    博客分类:
  • acm
因为在递归的过程中,总是选择最小的i,所以最先求到的解肯定是字典序最小的,我觉得这也是这道题用这个算法的原因,因为我觉得这个算法对减时没有什么卵用 #include <stdio.h> #include <stack> #include <string.h> using namespace std; int L,n,cnt; int s[1010]; int dfs(int cur) { if(cnt++==n) { for(int i=0;i<cur;i++) pr ...

zoj 1558 背包

    博客分类:
  • acm
#include <bits/stdc++.h> 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(int i=1;i<7;i++) scanf("%d",&num[i]); ...
#include <stdio.h> #include <string.h> #define lowbit(i) i&(-i) #define maxn 300000 using namespace std; int a[maxn],c[maxn],p[maxn]; int fd(int x) { return x==p[x] ? x :fd(p[x]); } void update(int x,int val) { while(x<=maxn) { c[x]+=val; ...
#include<iostream> #include<stdio.h> #include<string.h> using namespace std; #define M 1000005 struct tree{ int left,right,sum,lazy; }; tree g[M]; int map[M]; void pushDown(int i) { if(g[i].lazy) { g[2*i].lazy=1; g[2*i+1].lazy=1; g[i].lazy=0; g[2* ...
#include <stdio.h> #include <algorithm> #include <string.h> #include <queue> #include <stack> 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 { int x,y,id; }a[30]; int cet; void ...

kmp裸模版 poj 3461

    博客分类:
  • acm
#include <stdio.h> #include <string.h> 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,sizeof(next)); next[1] = 0; int len = strlen(str+1),k=0; for(int i=2;i< ...
来一发代码,先前后两两比较,如果前一个串是后一个串的字串,那他就是没必要的,假设第i个串是i+1的子串,如果在后面循环比较中,如果第i+1个串是后面串的子串,那i个串就没有比的必要了,如果第i+1不是后面串的子串,直接结束循环,查找结束,得出结果 #include <bits/stdc++.h> int next[10005]; int T; char s[505][2005]; bool v[550],flag; void getnext(char str[],int len) { int k=0; next[1]=0; for(i ...
#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) { xx+=a[i]; i-=lowbit(i); } return xx; } void update(int i,int val) ...

poj 3468 树状数组

    博客分类:
  • acm
http://kenby.iteye.com/blog/962159 ///我只想存个代码,思路来源解法都是上面那个网站看的 #include <stdio.h> #include <string.h> using namespace std; const int N = 100000+10; long long det[N],num[N],sum[N]; long long c1[N],c2[N]; int l,r,m,n; char st[10]; int lowbit(int x) { return x&(-x); } v ...
网上很多博客都只给了代码,这对于很多刚接触树状数组的人来说往往一头雾水。我说一下主要思路:你每次更新一个点的时候(加一个数),后面所有的点的前缀和都会相应的加上这个数,这其实就相当于这个数受了这个点影响,你每次画一个点的时候,其实就相当于画了它后面所有的点,然后你把那些不必要画的点受的影响减回来就行 #include <bits/stdc++.h> #define lowbit(i) i&(-i) using namespace std; const int N = 100000+10; int a[N],n,m,k,l,r; void update(in ...
原理:求和时c数组存的是相应区间的和,而在这c数组(mkx数组)求的是相应区间的最大值 #include <bits/stdc++.h> using namespace std; const int N = 400000+100; int n,m,k,l,r; int a[N]; int mkx[N],num[N]; char s[10]; int lowbit(int x) { return x&(-x); } void init() { for(int i=1;i<=n;i++) { mkx[ ...
Global site tag (gtag.js) - Google Analytics