自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 问答 (1)
  • 收藏
  • 关注

原创 AC自动机 病毒侵袭 hdu2896

和hdu2222题相似的水题提示:1)连着RE了好多发,没想明白,看了一下网上题解才知道,输入的不一定都是字母,所以next要开100!!!!!!!#include #include int tot;char str[10005];int t;//int time[100];struct trie { trie *fail; trie *next[100];

2014-08-23 16:00:30 501

转载 DP(AC自动机) Keywords Search hdu222

AC自动机的算法参考:http://www.cppblog.com/mythit/archive/2009/04/21/80633.html#include #include int tot;char str[1000005];int t;//int time[100];struct trie { trie *fail; trie *next[26];

2014-08-23 14:51:13 450

原创 DP Good Sequences

给N个升序的数字,要求找出一个子串,每相邻两个数字不互质,求最长串的长度提示1)dp[i]表示到第i个数字的最长串2)dp[i]用前i-1项中与第i项不互质的最大项更新3)寻找与第i项不互质,即找与第i项有公公因数,所以建立数组dig[i]表示该因数出现的次数#include #include #define maxn 100005int dp[maxn];int di

2014-08-17 17:01:12 618

原创 并查集+欧拉回路+字典树 Colored Sticks POJ 2513

输入多组数据,每组数据两种颜色,表示一根木头两端的颜色,现在要将这些木头相连,要求相连部分颜色相同,问能否全部连通提示1)一个要判断所有的木头是否在一个集合中,即是否能相连2)判断一种颜色出现的数量3)一棵树如果只有0或2个点出现次数为奇数,则树可以一笔画成#include #include #define maxn 500005int tot;int f[maxn];

2014-08-17 11:01:18 646

原创 数论 Number Transformation HDU4952

已知n,k,操作k次,每次操作求大于n且能被次数i整除的最小的数已知x*i,所以(i+1)*y>=x*i,y>=x-[x/(i+1)],当x#include int main(){ long long n,k; long long i; int time=0; while(scanf("%I64d%I64d",&n,&k)!=-1) {

2014-08-16 14:58:16 720

原创 并查集 How Many Answers Are Wrong HDU 3038

一道略坑爹的并查集

2014-08-14 20:26:50 406

原创 并查集+贪心 Conquer a New Region HDU 4118 && ZOJ 3659

据说是区域赛的题,拿到的时候可把我吓坏了,没想到是水水的yi

2014-08-14 16:27:01 418

原创 并查集 Junk-Mail Filter hdu 2473

#include #include #define maxn 1000001int f[maxn];int p[maxn];int flag[maxn];int find(int i){ if(i==p[i]) return p[i]; p[i]=find(p[i]); return p[i];}int main(){ int n,k; int i,j; ch

2014-08-14 13:40:49 326

原创 并查集 食物链 POJ1182

输入N和K,表示N个点,K组数据输入D X Y若D=1,X吃Y若

2014-08-14 09:57:47 415 1

原创 并查集 Corporative Network POJ 1962

输入E X,表示查找X到根节点的距离;

2014-08-12 18:39:50 332

原创 DP Sum of Different Primes POJ 3132

输入n和k,使k个不相同的素数的和为n,求共有多少组

2014-08-12 13:03:08 312

原创 最长公共子序列DP Common Subsequence HDU 1159

子序列可以不连续#include #include int dp[1005][1005];int max(int a,int b){ return a<b?b:a;}int main(){ char str1[1005],str2[1005]; int len1,len2; int i,j; int maxn; char a; while(scanf("%s%s",s

2014-08-10 11:01:12 296

原创 水水的DP Travel POJ 3230

一道水水的DP题

2014-08-10 10:10:50 375

原创 据说是水DP Lucky tickets POJ 2346

题目要求给一个N位数,计算前N/2

2014-08-09 20:37:35 378

原创 简单DP 免费馅饼 HDU 1176

第一次A的代码500B#include #include int max(int a,int b){ return a<b?b:a;}int dp[12][100005];int main(){ int n; int i; int a,b; int maxn; while(scanf("%d",&n)!=-1) { if(n==0) break; ma

2014-08-09 16:44:37 305

原创 字典树+DFS Word Puzzles POJ 1204

首先输入一张字母表,再给出w个单词,找出该单词

2014-08-09 15:50:46 335

原创 字典树水题Flying to the Mars HDU 1800

输入一群士兵的熟练度,熟练度高的keyizuio

2014-08-08 16:34:02 270

原创 DFS水一发Stone Pile Ural_1005

#include #include #include using namespace std;int minn;int w[26];int mark[26];int n;int sum;int half;int xxx(int a){return a>0?a:-a;}int cmp(int a,int b){return a>b;

2014-08-08 14:22:32 366

原创 简单DP Stone Pile Ural_1005

#include #include int xxx(int a){return a>0?a:-a;}int dp[2000000];int main(){int n;int i;int w[25];int half;int tot;int min;int fr;int ed;while(scanf("%d",&n)!=-1){

2014-08-08 13:33:20 304

原创 字典树+DFS T9 HDU 1298

#include #include #include #define maxn 30 int c;char a[105],b[105];int fr[10],ed[10];int flag;int max;struct trie{trie *next[maxn];char s;int level;};trie memory[100010]

2014-08-08 12:59:41 310

原创 水题Conductors URAL1011

#include int main(){double a,b;double aa,bb;int fr,ed;int i;while(scanf("%lf%lf",&a,&b)!=-1){for(i=1;;i++){aa=i*a/100;bb=i*b/100;fr=(int)(aa);ed=(int)(bb);if((fr1e-8)&&(a

2014-08-07 20:29:30 325

原创 水题(Q的各个数字积为N)

#include #include using namespace std;int main(){int a[105];int n;int tot;int i;while(scanf("%d",&n)!=-1){if(n==0)printf("10\n");else if(nprintf("%d\n",n);else{i=9;to

2014-08-07 19:05:06 503

原创 字典树 统计难题HDU 1251

#include #include #include struct trie{trie *next[30];int num;};trie *root;void build(char *str){int len=strlen(str);trie *p=root,*q;for(int i=0;i{int id=str[i]-'a';if(

2014-08-06 15:27:40 405

原创 字典树+并查集Virtual Friends HDU 3172(900MS)

#include #include #include int f[100010];int sum[100010];int c;int tot;int find(int i){while(f[i]!=i)i=f[i];return f[i];}struct trie{trie *next[60];int num;bool v;}

2014-08-06 14:27:27 359

原创 字典树HDU1671

#include #include #define max 10int c;struct trie{trie *next[max];bool v; int num;};trie *root;trie memory[120010];int build(char *str){int len=strlen(str);trie *p=&mem

2014-08-05 10:29:19 342

原创 数论寻找等差素数UVA 10650

#include #include int prime(int n)                                            {if(n==0||n==1)return 0;else if(n==2||n==3)return 1;else{int i;for(i=2;i*i{if(n%i==0)return 0;

2014-08-03 10:27:19 347

原创 DP计算最大和HDU1003

#include int dp[100005];int f[100005];int main(){int t;int n,i,j,ch;int sum;int fr,ed;int max;while(scanf("%d",&t)!=-1){for(i=1;i{max=-10000;scanf("%d",&n);for(j=0;js

2014-08-01 11:09:10 326

空空如也

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

TA关注的人

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