- 浏览: 31643 次
-
最新评论
文章列表
简单题。
/*
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<stack>
#include<set>
#include<math.h>
using namespace std;
typedef long long int64;
//typedef ...
- 2013-08-13 22:35
- 浏览 354
- 评论(0)
Wa的版本。。。
/*
DP
dp[i][j]:前i个取某些个且cost不超过j得到的最大价值
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<stack>
#include<set>
#include<math.h>
using namespace ...
- 2013-08-13 21:14
- 浏览 349
- 评论(0)
不懂。。
sort位置不同就是不同的结果。。。
/*
字符串处理
*/
#include<stdio.h>
#include<string>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<stack>
#include<set>
#include<math.h>
using n ...
- 2013-08-13 14:09
- 浏览 316
- 评论(0)
题意:一个空平面,每次增加一个点,
其坐标根据上一个点算出:(x[i-1] * Ax + Bx ) mod Cx,(y[i-1] * Ay + By ) mod Cy求出现有点集中的最近点对的距离的平方,共增加n个点,求每次求得的平方的和
http://blog.csdn.net/liuledidai/article/details/9664031
/*
每次对于一个新插入的点,找出x与之最近的,然后分别向两侧搜
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#includ ...
- 2013-08-12 21:26
- 浏览 394
- 评论(0)
思路是想到了一些 不过愣是没敢写。。。。。。。。。。。
/*
题意:给定一个整数n(2 <= n <= 109),满足a+b=n并且[a,b]的最小公倍数最大。
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std ...
- 2013-08-12 19:55
- 浏览 435
- 评论(0)
状态压缩DP题意:每次可以去掉一个回文串,求最少几步能取完。
/*
状态压缩DP
题意:每次可以去掉一个回文串,求最少几步能取完。
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long l ...
- 2013-08-12 10:57
- 浏览 298
- 评论(0)
/*
匈牙利算法
二分匹配 最小点覆盖=最大匹配。
即踢掉最小点覆盖
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long ll;
//typedef __int64 int64;
const ...
- 2013-08-11 21:20
- 浏览 273
- 评论(0)
/*
找规律
题意:abs(i%A - i%B) 对i从0~N-1求和
从0~N-1一个一个算必TLE,着A,B两者差相同的部分合并起来算
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long ...
- 2013-08-11 09:35
- 浏览 400
- 评论(0)
推导公式。
列出前5的数列,即可发现规律。
/*
推导公式
a[n] = 2^(n-1) + (n-2)*2^(n-3)
*/
#include<stdio.h>
#include<math.h>
#include<algorithm>
using namespace std;
typedef long long int64;
const int64 mod = 1e9+7;
int64 FastPow( int64 n,int64 m ){//n^m
int64 sum = 1;
while( m>=1 ){
if( m%2==1 ) ...
- 2013-08-10 16:38
- 浏览 495
- 评论(0)
/*
AC&Simple
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long ll;
//typedef __int64 int64;
const int maxn = 110005 ...
- 2013-08-10 15:29
- 浏览 259
- 评论(0)
BFS求树的直径。
/*
bfs+求树的直径
关键:if k<=maxs+1 直接输出k-1;
else: k肯定的是包括最长路。先从最长路的起点出发,再走分支,最后到达最长路的终点。
因此是2*(k-(maxs+1))+maxs;
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#incl ...
- 2013-08-10 15:10
- 浏览 364
- 评论(0)
简单。
/*
简单题
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long ll;
//typedef __int64 int64;
const int maxn = 105;
const ...
- 2013-08-09 21:25
- 浏览 355
- 评论(0)
最长公共子序列。
怎么map就不行!!!
/*
LCS 最长公共子序列
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long ll;
//typedef __int64 int64;
...
- 2013-08-09 20:50
- 浏览 336
- 评论(0)
/*
贪心
先挑出最小的Mm,然后在Mm左侧的按情况考虑,右侧的按顺序排列。
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<map>
#include<math.h>
using namespace std;
typedef long long ll;
//typedef __int64 int64;
c ...
- 2013-08-09 18:00
- 浏览 364
- 评论(0)
经典的状态压缩DP。
dp[i][j][k] = max( dp,dp[i-1][k][k2] );k是前一行的状态,k2是前二行的状态。
/*
dp[i][j][k] = max( dp,dp[i-1][k][k2] );
k是前一行的状态,k2是前二行的状态。
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
#include<queue>
#include<sta ...
- 2013-08-07 22:46
- 浏览 447
- 评论(0)