
简单题
二十一画生
嚶其鳴矣求其友聲
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
hdu 2180 时钟
#includeusing namespace std;int main(){ int a,b,s,t,i,j,k; while(cin>>a>>b>>s>>t && (a || b || s || t)) { if(a>s || (a==s && b>=t)) s+=12; k=0; for(i=0;;i++)原创 2013-06-14 08:29:52 · 1171 阅读 · 0 评论 -
hdu 2089 不要62(暴力)
#include#include#includechar ch[20];int j[1000010];void set(){ int i; j[0]=0; for(i=1;i<=1000010;i++) { j[i]=j[i-1]; itoa(i,ch,10); if((strstr(ch,"6原创 2013-05-21 14:45:38 · 787 阅读 · 0 评论 -
hdu 2008 数值统计
#include#define N 100void main(){ int i,n; double a[N]; while(scanf("%d",&n)==1) { int x=0,y=0,z=0; if(n==0) continue; for(i=0;i<n;i++) { scanf("原创 2013-05-21 14:27:36 · 858 阅读 · 0 评论 -
hdu 1517 A Multiplication Game
//Time 0ms, Memory 280K#includeusing namespace std;int main(){ int n,t; while(cin>>n) { t=18; while(t<n) t*=18; t/=18; if(t*9>=n) cout<<"Stan wins."<<end原创 2013-05-25 21:52:53 · 755 阅读 · 0 评论 -
hdu 1115 Lifting the Stone (求重心)
#include#includeusing namespace std;typedef struct point{ double x,y; point(double x=0.0,double y=0.0):x(x),y(y){}}vector;point p[1000010],c;vector operator - (point a,point b) {return原创 2013-06-11 18:20:49 · 1292 阅读 · 0 评论 -
hdu 1272 小希的迷宫 (深搜)
#include#includeint a[100000][2],vis[100000],i,count;int f(int p,int k){ int j,t; for(j=k+1;j-k<=i;j++) { if(j>i) t=j-i-1; else t=j; if(p==a[t][0] && !vis[a[t][原创 2013-06-12 08:23:13 · 1394 阅读 · 0 评论 -
uva 1329 - Corporative Network
题意:有n个结点,初始时每个结点的父节点都不存在。你的任务是执行如下操作: I u v:把结点u的父节点设为v,距离为|u -v|除以1000的余数。输入保证执行指令前u没有父节点。 E u :询问u到根节点的距离。#include#include#define mx 20010using namespace std;int fa[原创 2013-11-06 20:48:22 · 775 阅读 · 0 评论 -
hdu 1253 胜利大逃亡 (深搜)
//Time 531ms,Memory 1228K#include#includeint map[50][50][50],t,t1,vis[50][50][50],dx[6]={0,0,0,0,1,-1},dy[6]={0,1,0,-1,0,0},dz[6]={1,0,-1,0,0,0},a,b,c;void f(int x,int y,int z){ int i,nx,ny,nz原创 2013-06-12 08:17:42 · 1425 阅读 · 3 评论 -
uva 1160 - X-Plosives(并查集)
简单的并查集。#include#define mx 100010int fa[mx];int find(int x){ while(fa[x]!=x) x=fa[x]; return x;}int main(){ int i,x,y,cnt; while(scanf("%d",&x)!=EOF) { for(i=0;i<mx;i++) fa[i]=i;原创 2013-11-06 19:50:55 · 742 阅读 · 0 评论 -
uva 11995 - I Can Guess the Data Structure!
大致题意:输入1表示push,2表示pop,输出:stack:一定是个栈;queue:一定是个队列;priority:一定是个优先队列;impossible:都不是;not sure:至少有两种可能。注意:它有可能在pop前已为空,所以要先判断empty()。#include#include#include#includeusing namespace s原创 2013-11-05 20:25:02 · 968 阅读 · 0 评论 -
uva 11997 - K Smallest Sums
题意:有k个整数数组,各包含k个元素。在每个数组中取一个元素加起来,可以得到 kk个和。求这些和中最小的k个值(从小到大输出)。#include#include#includeusing namespace std;struct node{ int s,b; node(int s,int b):s(s),b(b){}};bool operator < (node x,原创 2013-11-06 19:05:42 · 725 阅读 · 0 评论 -
uva 1203 - Argus
题意:Argus系统支持一个Register命令:Register Q_num Period该命令注册了一个触发器,它每Period秒就会产生一次编号为Q_num的事件。你的任务是模拟出前k个事件。如果事件同时发生,先处理Q_num小的事件。#include#includeusing namespace std;struct node{ int num,period,ti原创 2013-11-06 17:39:03 · 1023 阅读 · 0 评论 -
POJ 3348 Cows
题目大意:给你n棵树,可以用这n棵树围一个圈,然后在圈里面可以养牛,每个牛需要50平方米的空间,问最多可以养多少牛?其实就是求一个凸包,计算凸包面积,然后除以50,然后就得到答案,直接上模板了。凸包这一类型的题目差不多,可以作为模板使用,时间复杂度是NlogN。 //Time 32ms; Memory 568K#include#includeusing nam原创 2013-07-25 08:10:40 · 1124 阅读 · 0 评论 -
hdu 1099 Lottery
#include__int64 gcd(__int64 a,__int64 b){ return b==0?a:gcd(b,a%b); }int main(){ int i,j,prime[]={2,3,5,7,11,13,17,19},n,t; __int64 s1,s2,m,d,gd; while(scanf("%d",&n)==1) {原创 2013-06-11 18:15:53 · 998 阅读 · 0 评论 -
hdu 1006 Tick and Tick (解不等式方程)
// Time 46ms, Memory 328K#include#includeusing namespace std;double d;struct range{ double l,r;};range get(double a,double b){ range p; if(a<0) { p.r=(d-b)/a;p.l=(360-d原创 2013-06-14 08:33:48 · 1547 阅读 · 0 评论 -
hdu 2147 kiki's game
这是一道简单的博弈题。刚开始我用建表的方法来做,代码如下://Time 31ms, Memory 15920K#include#includeusing namespace std;int a[2001][2001];int main(){ int i,j,n,m,t; memset(a,0,sizeof(a)); for(i=0;i<=2000;i++原创 2013-05-25 08:29:04 · 928 阅读 · 0 评论 -
hdu 1524 A Chess Game
\\Time 31ms, Memory 4312K#include#include#includeusing namespace std;int n,p[1010][1010],sg[1010],b[1010];int mex(int x){ if(sg[x]!=-1) return sg[x]; if(b[x]==0) return 0; int i,v[10原创 2013-05-26 22:10:47 · 879 阅读 · 0 评论 -
POJ 2015 Permutation Code
#include#include#include#includeusing namespace std;int main(){ int i,j,k,n,d,x,l,a; char s[35],p[35],m[65],c[65]; while(scanf("%d",&x)!=EOF && x) { getchar(); gets(s); gets(p); gets原创 2013-06-05 20:07:40 · 1047 阅读 · 0 评论 -
hdu 2036 改革春风吹满地
#includeint main(){ int i,n,x[100],y[100]; double s; while(scanf("%d",&n)==1 && n) { s=0.0; for(i=0;i<n;i++) scanf("%d%d",&x[i],&y[i]); for(i=1;i<原创 2013-06-07 13:57:34 · 880 阅读 · 0 评论 -
hdu 21085 Holding Bin-Laden Captive! (母函数的应用)
#include#include#define N 8010int main(){ int i,j,k,n1,n2,n3,a[N],b[N],c[N]; while(scanf("%d%d%d",&n1,&n2,&n3)==3 && (n1 || n2 || n3)) { memset(a,0,sizeof(a)); memset(b原创 2013-06-07 14:04:18 · 764 阅读 · 0 评论 -
hdu 2048 神、上帝以及老天爷
#includeint main(){ int i,n,c; double a[21]; a[1]=0;a[2]=1; for(i=3;i<21;i++) a[i]=(i-1)*(a[i-1]+a[i-2]); scanf("%d",&c); while(c--) { scanf("%d",&n);原创 2013-06-07 14:00:52 · 968 阅读 · 0 评论 -
hdu 2063 过山车 (二分匹配)
#include#includeint map[510][510],vis[510],a[510],b[510],n,m,k;int f1(int u){ int v; for(v=1;v<=n;v++) { if(map[u][v] && !vis[v]) { vis[v]=1; if原创 2013-06-07 14:06:54 · 793 阅读 · 0 评论 -
hdu 2067 小兔的棋盘(Catalan数)
#includeint main(){ __int64 i,n,a[36],j=0; a[1]=2; for(i=2;i<36;i++) { a[i]=2*(a[i-1]*2-a[i-1]*3/(i+1)); } while(scanf("%I64d",&n)==1 && n!=-1) { j++;原创 2013-06-07 14:09:58 · 887 阅读 · 0 评论 -
hdu 1879 继续畅通工程 (并查集)
#include#includeint map[105][105],vis[105][105],ans,n,father[105];int find(int x){ while(x!=father[x]) x=father[x]; return x;}int main(){ int i,j,k,a,b,d,t,min1,min2,state,t原创 2013-06-08 13:45:46 · 939 阅读 · 0 评论 -
hdu 2085 核反应堆
#includeint main(void){ int n, i; __int64 g[34] = {1}; __int64 d[34] = {0}; for (i = 1; i < 34; i++) { g[i] = 3 * g[i - 1] + 2 * d[i - 1]; d[i] = g[i - 1] + d[i -原创 2013-06-08 13:38:29 · 1020 阅读 · 0 评论 -
uva 11991 - Easy Problem from Rujia Liu?
题意:给出一个包含n个整数的数组,你需要回答若干查询。每次询问两个整数k和v,shuc原创 2013-11-06 16:29:07 · 771 阅读 · 0 评论