- 博客(45)
- 资源 (18)
- 收藏
- 关注
原创 hdu 3419
暴力做法:#include#include#include#define N 20int num[N];int juge(int n){ memset(num,0,sizeof(num)); while(n) { if(n%10==0) return 0; if(num[n%10]==0) num[n%10]=1; else return 0;
2014-07-31 20:34:56 406
原创 hdu 1431
#includeint num[]={5, 7, 11, 101, 131, 151, 181, 191, 313, 353, 373, 383, 727, 757, 787, 797, 919, 929, 10301, 10501, 10601, 11311, 11411, 12421, 12721, 12821, 13331, 13831, 13931, 14341, 14741, 1
2014-07-31 20:33:27 451
原创 hdu 1015
#include#include#includeint cmp(const void *a ,const void *b){ return *(int*)b-*(int*)a;}int main(){ int n,i,j,k,p,q,len,flag; char str[100]; int a[100]; while(scanf("%d%s",&n,str),n!=0||s
2014-07-31 20:31:41 408
原创 hdu 3486 Interviewe
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4469 Accepted Submission(s): 1095Problem DescriptionYaoYao has a company and he wan
2014-07-31 18:49:23 411
原创 poj 3903 求最长上升子序列长度
Stock ExchangeTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 3150 Accepted: 1160 DescriptionThe world financial crisis is quite a subject. Some people are more relaxed whil
2014-07-31 18:46:00 413
原创 hdu 4521 最长递增子序列
小明系列问题——小明序列Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 1270 Accepted Submission(s): 346Problem Description 大家都知道小明最喜欢研究跟序
2014-07-31 18:31:14 334
原创 hdu 4902
Nice boatTime Limit: 30000/15000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 91 Accepted Submission(s): 47Problem DescriptionThere is an old
2014-07-31 18:27:38 453
原创 C. Hamburgers
time limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputPolycarpus loves hamburgers very much. He especially adores the hamburgers he makes with hi
2014-07-30 20:46:49 665
原创 384b
/*题目意思:给出n个数组,每个数组包括m个数字,当k = 0 时,需要把n个数组都按照从小到大的顺序排列,k = 1则把n个数组里面的数字按照从大到小的顺序排列。直接模拟即可,不过有个地方注意下是可以减少工作量的,当处理第 i 行的时候,不再需要移动前 i - 1 行的数组下标。因为前 i - 1行的数组都排好序了*/#include#include#define N 1005usin
2014-07-30 20:45:32 399
原创 383a
/*题目大意:一个农场有n头奶牛,现在农场主要挤奶,0代表朝左,1代表朝右。如果奶牛看到其他奶牛被挤奶的话,会受到惊吓,产奶量会减少1。问说一个序列使得损失最少。解题思路:先将脸朝左的按照从右到左的顺序挤掉,再将朝右的按照从左到右挤掉。损失数只要计算前缀和即可。*/#include#include#define N 200005int a[N],s[N];int main(){
2014-07-30 20:44:34 379
原创 374a
#include#include#define inf 0x3fffffffint i,j,n,m,a,b;int max(int a,int b){ return a>b?a:b;}int min(int a,int b){ return a<b?a:b;}int dfs(int x,int y){ int dx,dy; if(i==x&&j
2014-07-30 20:42:35 557
原创 372b
B. Counting Rectangles is Funtime limit per test4 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere is an n×m rectangular grid, each cell of th
2014-07-30 20:41:43 603
原创 382b
题目大意:给出a,b,w,x,c;每经过一秒,进行操作c = c - 1,若果b >= x的话,b=b-x;否则a=a-1,b=w-(x-b)。问多少秒后c<=a。解题思路:c每一秒都会减少,但是只有在b>=x时,a才不会变,换句话说,只有在b<x时,c和a的距离才会缩进。然后既要缩进c-a次,也就是b - x * (c-a)。但是会出现说b <x 的情况,就要加上w-x。假设要k次b<x,那么
2014-07-30 20:41:15 428
原创 372a
#include#include#define N 550000using namespace std;int a[N];int main(){ int n,d,c,i; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); d=n-1; c=0; for(
2014-07-30 20:37:18 458
原创 主席树
可持久化线段树,也叫作函数式线段树,也就是主席树,(。。。因为先驱就是fotile主席。。Orz。。。)网上的教程很少啊,有的教程写得特别简单,4行中文,然后就是一篇代码~~这里,我将从查找区间第k小值(不带修改)题的可持久化线段树做法中,讲一讲主席树。/*只是略懂,若有错误,还请多多包涵!*/可持久化数据结构(Persistent data structure)就是利用函数式编程
2014-07-30 20:28:24 887
原创 unique函数
unique()函数是一个去重函数,STL中unique的函数 unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除。他是c++中的函数,所以头文件要加#include,具体用法如下: int num[100]; unique(num,mun+n)返回的是num去重后的尾地址,之所以说比不真正把重复的元素删除,其实是,该函数把重
2014-07-30 12:31:43 526
原创 hdu 3065
#include#includeint cnt[1005];char str[1005][100],s[2000005];struct node{ node *fail; node *next[33]; int id; node() { id=0; fail=NULL; memset(next,0,s
2014-07-30 12:20:27 361
原创 hdu 2896
#include#include#includeusing namespace std;bool cmp(int a,int b){ return a<b;}struct node{ node *fail; node *next[95]; int id; node() { id=0;//注意初始化 fa
2014-07-30 12:19:47 372
原创 hdu 2222
#include#include#define N 500000struct node{ node *fail; node *next[26]; int count; node() { count=0; memset(next,0,sizeof(next)); fail=NULL; }}*q
2014-07-30 12:16:50 379
原创 poj 2185
思路:KMP很好的一道题。首先易证:最小覆盖子矩阵一定靠左上角。那么,我们考虑求出每一行的最小重复串长度,所有行的最小重复串的长度的lcm就是最小重复子矩阵的宽。然后我们对列也做相同的操作。于是我们就可以求得最小重复子矩阵的大小了。(这里要注意一点:当所得的宽大于原来的宽时,就让等于原来的宽,长也如此)。算法实现:算法的核心在于高效的求出每一行和每一列的最小重复串,这个可以最原串做一次KMP中的g
2014-07-29 20:59:42 411
原创 fzu Problem 2128 最长子串
Accept: 61 Submit: 252Time Limit: 3000 mSec Memory Limit : 65536 KB Problem Description问题很简单,给你一个字符串s,问s的子串中不包含s1,s2...sn的最长串有多长。 Input输入包含多组数据。第一行为字符串s,字符串s的长度1到10^6次方,第二行是字符串s不能包含的子串
2014-07-29 20:59:11 570
原创 hdu 2594
Simpsons’ Hidden TalentsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2029 Accepted Submission(s): 747Problem DescriptionHomer:
2014-07-29 20:56:36 453
原创 poj 2752
Seek the Name, Seek the FameTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 10341 Accepted: 5008DescriptionThe little cat is so famous, that many couples tramp over hill and dale
2014-07-29 20:55:27 356
原创 hdu 1686
OulipoTime Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3616 Accepted Submission(s): 1430Problem DescriptionThe French author Georg
2014-07-29 20:55:26 479
原创 hdu 4893 线段树
Wow! Such Sequence!Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 620 Accepted Submission(s): 191Problem DescriptionRecentl
2014-07-29 20:50:59 444
原创 hdu 3804 树链剖分+线段树
//题意:给出一棵树,Q个询问x,w,x到1的路径上不超过w的最长边是多少。//思路:先按询问的权值从小到大排序,然后n-1条边也按权值从小到大排序,对于每个询问,//把小于等于当前权值的边加到树上,然后求当前树的最大值。。。#pragma comment(linker, "/STACK:10240000000000,10240000000000")#include#inclu
2014-07-29 10:30:40 416
原创 poj 3237 线段树+树链剖分
TreeTime Limit: 5000MS Memory Limit: 131072KTotal Submissions: 3587 Accepted: 1004DescriptionYou are given a tree with N nodes. The tree’s nodes are numbered 1 th
2014-07-28 17:50:36 416
原创 ”树链剖分+线段树“详解
“在一棵树上进行路径的修改、求极值、求和”乍一看只要线段树就能轻松解决,实际上,仅凭线段树是不能搞定它的。我们需要用到一种貌似高级的复杂算法——树链剖分。 树链,就是树上的路径。剖分,就是把路径分类为重链和轻链。 记siz[v]表示以v为根的子树的节点数,dep[v]表示v的深度(根深度为1),top[v]表示v所在的重链的顶端节点,fa[v]表示v的父亲,son[v]表示
2014-07-28 10:43:15 1135 2
原创 poj 1177 线段树+离散化+扫描线 求矩形的周长和
PictureTime Limit: 2000MS Memory Limit: 10000KTotal Submissions: 10230 Accepted: 5422DescriptionA number of rectangular posters, photographs and other pictures of
2014-07-25 15:53:19 841
原创 set容器总结
1.关于setC++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让
2014-07-23 20:58:32 450
原创 poj 1151 线段树扫描线求图形面积
AtlantisTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 16975 Accepted: 6468DescriptionThere are several ancient Greek texts that contain descriptions o
2014-07-23 20:04:49 505
原创 容器搜索算法:lower_bound, uper_bound
本文主要是验证,容器搜索算法的使用:lower_bound, uper_boundC++ STLiterator lower_bound( const key_type &key );iterator upper_bound( const key_type &key );2函数作用iterator lower_bound( const key_type &key ): 返回
2014-07-23 15:51:57 950
原创 set与map和pair容器
set与map和pair容器首先来看看set集合容器:set集合容器实现了红黑树的平衡二叉树数据结构,在插入元素时它会自动调整二叉树的排列,把该元素放到适当的位置,并且保证左右子树平衡。平衡二叉检索树采用中序遍历算法。 对于set,vector,map等等,它们的前向迭代器定义是这样的(以set为例):set::iterator it;for(it=s.begin();it
2014-07-23 15:47:58 583
原创 hdu 4864
TaskTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1930 Accepted Submission(s): 496Problem DescriptionToday the company has
2014-07-23 15:32:09 481
原创 hdu 4865 dp
Peter's HobbyTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 56 Accepted Submission(s): 17Problem DescriptionRecently, Peter
2014-07-22 20:11:05 790
原创 poj 2528 线段树离散化+区间更新
Mayor's postersTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 40456 Accepted: 11766DescriptionThe citizens of Bytetown, AB, could not stand that the ca
2014-07-21 14:12:01 535
原创 hdu 4857 逆向拓扑排序+逆向输出
逃生Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 341 Accepted Submission(s): 66Problem Description糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道
2014-07-21 10:39:27 534
原创 poj 3468 线段树区间更新
A Simple Problem with IntegersTime Limit: 5000MS Memory Limit: 131072KTotal Submissions: 47486 Accepted: 13966Case Time Limit: 2000MSDescriptionYou have N integers, A1, A2, ... , AN. You nee
2014-07-20 16:18:06 361
原创 hdu 1698 线段树区间更新
Just a HookTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 16251 Accepted Submission(s): 8087Problem DescriptionIn the game o
2014-07-20 16:07:00 424
原创 poj 2886
Who Gets the Most Candies?Time Limit: 5000MS Memory Limit: 131072KTotal Submissions: 9586 Accepted: 2917Case Time Limit: 2000MSDescripti
2014-07-20 11:40:49 381
C#中使用WinGraphviz实现dot脚本语言绘图
2017-03-11
c#练习_研究生分配_c#代码实现对.xls和.xlsx文件的导入和导出
2016-07-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人