自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 SSH(Struts、Spring、Hibernate)三大框架整合

1. 新建数据库ssh_db -> 新建表user_tb(id为主键,自动递增) 2. 导入jar包(struts、hibernate 和 spring) 3. 注册页面reg.jsp,将表单的 action 属性设置为 handleAction,input 元素的 name 属性值加上前缀“user.”,如user.username<%@ ...

2019-04-20 20:48:00 136

转载 动态规划(dp)专题

航线设置 问题描述在美丽的莱茵河畔,每边都分布着N个城市,两边的城市都是唯一对应的友好城市,现需要在友好城市间开通航线以加强往来,但因为莱茵河常年大雾,如果开设的航线发生交叉就有可能出现碰船的现象。现在要求尽可能多地开通航线并且使航线不能相交。输入有若干组测试数据,每组测试数据的第一行是一个整数n,它表示每边都分布着n个城市(1<=n<=1000)。接着...

2018-12-05 18:15:00 443

转载 HDU 2200 Eddy's AC难题

解析:1、可以从中任选m个人(n=>m>=2),有Cn(m)中选择;2、再把这m个人分2组(每个人都要分组),要使满足最小ac数大于最大ac数,只需要在m个人中插板即可;例如:m个人假如分别为 :1,2,3,4,......m-1,m (m个人的ac数从小到大排列)只需在任意位置插板就可分为符合要求的2组:1,2,3......t, || t+1....

2018-11-29 20:27:00 87

转载 POJ 1948 Triangular Pastures

题意:把很多单独的线段重新组合成一个三角形,使得三角形面积最大(所有的线段都必须用上)。思路:三角形的任意一条边的边长不能超过周长的一半,只需要用dp枚举两条边j,k,剩下的一条边长为tot - j - k;判断枚举出的这三条边是否能组成三角形,用海伦公式求出面积代码:#include <map>#include <set>#in...

2018-11-19 12:13:00 77

转载 2018ACM/ICPC 青岛现场赛 E题 Plants vs. Zombies

题意:你的房子在0点,1,2,3,...,n(n<=1e5)点每个点都有一颗高度为0的花,浇一次水花会长a[i]。你有一个机器人刚开始在你家,最多走m步,每一步只能往前走或者往后走,每走到一个地方除了房子都会给花浇水,问m步以后最低那朵花的高度最大是多少。思路:二分,并且可以证明左右横跳(即这一个点不够我们就来回走一直到够高度为止)。需要注意步数用完直接break,...

2018-11-12 17:22:00 139

转载 三大博弈

Bash 游戏有一堆石子共有N个。A B两个人轮流拿,A先拿。每次最少拿1颗,最多拿K颗,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N和K,问最后谁能赢得比赛。基础:1 , 2, ..., m是必赢局面, m+1是必输局面递推:m+2,m+3, ... ,2m+1是必赢局面,2m+2是必输局面 ...

2018-09-26 20:23:00 114

转载 ACM-ICPC 2018年北京网络赛 D-80 days

题意: n个城市环形连接,初始有c的钱,每到i城市,会获得a[i]的金钱,失去b[i]的金钱,问能否走遍这n个城市,且过程中金钱不为负数,输出起始城市,如果答案有多个,输出最小的数字。思路:a[i]-b[i]的值就是到达第i个城市的金钱变化,最开始想到暴力枚举起点城市,模拟后续到其他城市的金钱变化,出现负数就break。但是,100个样例,1e6的数据,总共1e8的数据,感觉如果直接...

2018-09-23 19:38:00 85

转载 hdu 2062 Subset sequence

题目分析考虑一个集合 An = { 1, 2, ..., n}。比如,A1={1},A3={1,2,3}。我们称一个非空子集元素的排列为一个子集序列。对所有的子序列按字典顺序排序。你的任务就是给出第m个子序列首先我们来看看An一共有多少个子集。n=1时,只有{1}一个子集合n=2时,就有:{1}, {2}, {1, 2}, {2, 1}4个子集合。...

2018-09-09 21:16:00 72

转载 hdu 2065(泰勒展式)

比赛的时候遇到这种题,只能怪自己高数学得不好,看着别人秒。。。。由4种字母组成,A和C只能出现偶数次。构造指数级生成函数:(1+x/1!+x^2/2!+x^3/3!……)^2*(1+x^2/2!+x^4/4!+x^6/6!……)^2.前面是B和D的情况,可以任意取,但是相同字母一样,所以要除去排列数。后者是A和C的情况,只能取偶数个情况。根据泰勒展开,e^x在x0=0点的...

2018-07-30 16:47:00 106

转载 C printf按8进制、10进制、16进制输出以及高位补0

1 int PrintVal = 9; 2 /*按整型输出,默认右对齐*/ 3 printf("%d\n",PrintVal); 4 /*按整型输出,补齐4位的宽度,补齐位为空格,默认右对齐*/ 5 printf("%4d\n",PrintVal); 6 /*按整形输出,补齐4位的宽度,补齐位为0,默认右对齐*/ 7 ...

2018-07-27 14:53:00 463

转载 poj 1321棋盘问题

题目链接:http://poj.org/problem?id=1321dfs经典模板: 1 dfs() 2 { 3 if条件判断——(到终点) 4 { 5 操作…… 6 return; 7 } 8 if……省略一些条件判断(剪枝优化,比如一些没必要的continue或者计算过的子问题的...

2018-04-21 20:19:00 90

转载 第一次训练题解

poj3372 Candy Distribution题目:http://poj.org/problem?id=3372题意:n个学生围成一圈,老师给1号学生和2号学生每人一颗糖后,然后跳过一个学生给4号一颗糖,接着跳过两个学生给7号一颗糖,以此类推分析:因为n达到10^9,不能用数组统计每个学生的状态,更不能使用暴力,会超时。但可以在一定范围内,写个小程序找规律(数值过大,须...

2018-04-16 11:49:00 79

转载 浅谈java中bigInteger用法

1.赋值:BigInteger a=new BigInteger("1");BigInteger b=BigInteger.valueOf(1);2.运算:① add(); 大整数相加BigInteger a=new BigInteger(“23”);BigInteger b=new BigInteger(“34”);a. ad...

2018-04-13 20:58:00 148

转载 POJ3617 Best Cow Line

问题分析,从S串头部删除一个字符,加到T的尾部从S的尾部删除一个字符加到T的尾部,构造尽可能小的T串S="ACDBCB" --> S="CDBCB" --> S=“CDBC“ --> S="CDB"T=""        T="A"      T="AB"   T="ABC"          头        尾     ...

2018-04-13 20:48:00 67

转载 八皇后问题

对列数(1-8)全排列,让每一行中的插入的数在列上没有重复判断斜线方向是否存在多的皇后#include <cstdio>#include <cmath>#include <iostream>using namespace std;int ans[10];bool b[10];void out(){ ...

2018-04-13 20:37:00 58

转载 减法原理

用数组存储每位上的数倒序,每次减去1,减去减数个1不够减(最低位为零),向前借位,如果前一位是零,继续向前借位,直至不是0为止,记为pos,将pos这位数减去1,其余位置为9如26#减法#include <cstdio>using namespace std;int main(){ int l,n; int a[6]...

2018-04-13 20:31:00 1778

转载 全排列

#include <iostream>using namespace std;bool b[4];int ans[4];/*全排列*/void dfs(int num){ if(num == 4) { for(int i = 1; i <= 3; i++) cout&lt...

2018-04-13 20:20:00 73

转载 lower_bound和upper_bound

ForwardIterlower_bound(ForwardIter first, ForwardIter last,const _Tp& val)算法返回一个非递减序列[first, last)中的第一个大于等于值val的位置。ForwardIter upper_bound(ForwardIter first, ForwardIter last, const _Tp&am...

2018-04-13 19:51:00 176

转载 hdu 2100 LoveKey

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2100题意:26进制加法分析:因为给定的两个字符串长度过大,不可能将其转化为十进制相加(会溢出),所以只能采用数组存储每一位的二十六进制数,然后对位相加,逢26向高位进一。注意:AAAAAA A 相加输出一个Acode:#include<stdio.h>...

2018-04-09 15:57:00 77

转载 c++中string类中的函数

C/C++ string库(string.h)提供了几个字符串查找函数,如下:memchr 在指定内存里定位给定字符 strchr 在指定字符串里定位给定字符 strcspn 返回在字符串str1里找到字符串str2里的任意一个字符之前已查找的字符数量 strrchr 在字符串里定位给定字符最后一次出现的位置 strpbrk 在字符串str1里定位字符串str2里任意一个首次出现的字...

2018-03-23 15:37:00 93

转载 二进制

/*http://poj.org/problem?id=2013*/问题描述:重新输出字符串组,两端最短,中间 最长#include <iostream>#include <cstdio>#include <string>using namespace std;const int MAXM = 25 + 1;const int MAXN =...

2018-03-07 10:18:00 53

转载 快速幂

快速幂这个东西比较好理解,但实现起来到不老好办,记了几次老是忘,今天把它系统的总结一下防止忘记。  首先,快速幂的目的就是做到快速求幂,假设我们要求a^b,按照朴素算法就是把a连乘b次,这样一来时间复杂度是O(b)也即是O(n)级别,快速幂能做到O(logn),快了好多好多。它的原理如下:  假设我们要求a^b,那么其实b是可以拆成二进制的,该二进制数第i位的权为2^(i-1),...

2017-12-11 17:12:00 51

转载 substring

C++之substr与substring浅谈 转载 2017年04月19日 13:43:30 标签:C++ 函数 /5679编辑 删除 转自:http://blog.sina.com.cn/s/blog_9d85c1900102v1rm.html区别:主要是两者的参数不同功能:相似。 substr...

2017-11-29 23:29:00 104

转载 hdu 4678

HDU 4768: Flyer题意:有N个社团,每个社团三个属性A,B,C,表示会向编号A+k*C的同学发传单(k=0,1,2... && A+k*C <= B)。题目保证最多有一个人收到的传单数是奇数。求如果有人收到传单是奇数,输出编号和他收到的传单数。思路:观察最后情况,可以发现,要么每个人都是偶数。要么有一个是奇数。观察其前缀和,发现...

2017-11-27 12:38:00 101

转载 扩展欧几里得算法

欧几里德算法欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。基本算法:设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),即gcd(a,b)=gcd(b,a%b)。第一种证明: a可以表示成a = kb + r,则r = a mod b  假设d是a,b的一个公约数,则有  d|a, d|b,而r = a -...

2017-11-19 19:02:00 49

转载 欧几里得算法

欧几里得算法,即辗转相除法求最大公约数1.循环:int gcd(int a,int b){  if(a < b) swap(a,b);  while(a%b != 0)  {    int t = a%b;    a = b;    b= t;  }  return b;}2.递归:int gcd(int a,int b)...

2017-11-19 19:00:00 68

转载 Floyd_Warshall(任意两点之间的最短路)

/*O(V^3)案例:1 2 21 3 52 3 1*/#include <cstdio>#include <iostream>using namespace std;const int MAX_V = 100;int d[MAX_V][MAX_V];//d[u][v] 表示边e=(u,v)的权值(不存在时设为INF,不过d[...

2017-11-16 21:07:00 101

转载 带结构体的优先队列

hdu-1896问题描述:路上有一些石头(位置,所抛出的距离),如果遇到的是奇数块石头,则向前抛,偶数块石头就让它放在原地不管。如果遇到位置相同的两块石头,就假设抛出距离近的石头先遇到。思路:遇到奇数块石头,(位置=位置+距离,距离)入栈,偶数则不管,直至栈空为止#include <cstdio>#include <queue>#include &lt...

2017-11-16 20:44:00 115

转载 reverse和reverse_copy函数的应用

reverse函数的作用是:反转一个容器内元素的顺序。函数参数:reverse(first,last);//first为容器的首迭代器,last为容器的末迭代器。它没有任何返回值。 这个函数比较简单,看一个例题:输入一个字符串,输出反转后的字符串。 直接调用函数。 代码: #include <iostream> #include <algorithm> #incl...

2017-11-06 20:15:00 98

转载 并查集

本文主要介绍解决动态连通性一类问题的一种算法,使用到了一种叫做并查集的数据结构,称为Union-Find。更多的信息可以参考Algorithms一书的Section 1.5,实际上本文也就是基于它的一篇读后感吧。原文中更多的是给出一些结论,我尝试给出一些思路上的过程,即为什么要使用这个方法,而不是别的什么方法。我觉得这个可能更加有意义一些,相比于记下一些结论。关...

2017-11-06 13:35:00 37

转载 最短路径(优先队列优化)

/*O(E*logV)*/#include"cstdio"#include"queue"#include"algorithm"#define INF 1<<28#define MAX 300using namespace std;int v,e,s;int graph[MAX][MAX];//图的存储采用邻接矩阵int dist[MAX];//dist表示当...

2017-11-06 13:31:00 327

转载 优先队列

/*num = q.top();其余同队列定义://priority_queue<int,vector<int>,less<int> > pque;//less<int> greater<int>后面不加括号priority_queue<int,vector<int>,cmp&gt...

2017-11-06 13:25:00 64

转载 队列基本语法

/*num = q.front() 取队顶元素q.pop() 出队q.push(num) 入队q.empty() 判空size = q.size() 大小*/#include<iostream>#include<cstdio>#include<queue>using namespace std;queu...

2017-11-06 13:22:00 194

转载 栈基本语法

栈:/*num = s.top() 取栈顶元素s.pop() 出栈s.push(num) 入栈s.empty() 判空size = s.size() 大小*/#include<iostream>#include<cstdio>#include<stack>using namespace std;stac...

2017-11-06 13:20:00 320

转载 结构体排序

重写排序方法#include<cstdio>#include<cstring>#include<algorithm>#include<vector>#include<iostream>using namespace std;const int N=1e6+5;const int INF=0x7fffffff;int ...

2017-11-06 13:11:00 60

转载 字符串转下标

方法1:#include<cstring>#include<cstdio>using namespace std;struct Ball{ char color[20]; int num;}ball[1005];int cnt=1;void count_num(char ch[]){ int i; for(i=0;i<...

2017-11-06 13:09:00 219

转载 格式控制1

对应于每一个输入,请输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开,每一个杨辉三角后面加一个空行。#inlude <stdio.h>#define N 100int main(){ int n,i,j,a[N][N]; a[0][0]=1; a[1][0]=1; a[1][1]=1; for(i=2;i<N;i++)...

2017-11-06 12:59:00 213

转载 Prime

#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int max_v=100;const int INF=1<<20;int V,E;int d[max_v];bool used[max_v];int cost[max_v][max_...

2017-11-06 00:13:00 52

转载 次短路经(dijsktra)

#include <cstdio>#include <cstring>#include <queue>#include <algorithm>#define MAXN (5000 + 10)#define INF (5000*5000*2)using namespace std;struct edge{ int to, cost;...

2017-11-06 00:11:00 100

转载 int各种数据类型的表示范围

计算方法:1.正数部分数部分:2^(字节数*8-1)-12.负数部分:-(2^(字节数*8-1)+1)unsign int:正数部分*2+1转载于:https://www.cnblogs.com/unknownname/p/7773282.html...

2017-11-02 17:20:00 502

空空如也

空空如也

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

TA关注的人

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