
ACM(hdoj)
jingtian678
这个作者很懒,什么都没留下…
展开
-
hdoj 2031题代码及详解
#includeusing namespace std;void fun(int n,int m){ if(n { if(n==10) printf("A");//如果n if(n==11) printf("B"); if(n==12) printf(原创 2016-04-25 22:22:43 · 457 阅读 · 0 评论 -
hdoj2035快速幂
#include using namespace std; int main(void){ int i,a,b,temp; while(cin>>a>>b&&(a||b)) { temp=1; for(i=1;i { temp=temp*a%1000;//输出A^原创 2016-05-06 22:54:34 · 290 阅读 · 0 评论 -
hdoj2045动态规划
#includeusing namespace std;int main(void){ int n,i; long long s[50]; s[0]=3,s[1]=6,s[2]=6; for(i=3;i s[i]=s[i-1]+2*s[i-2]; while(cin>>n) { cout }}/*【动态规划】:把多阶段过程转原创 2016-05-07 17:41:58 · 370 阅读 · 0 评论 -
hdoj2050代码及详解
#includeusing namespace std;int main(void){ int i,n,a; while(cin>>n) { for(i=0;i { cin>>a; cout } }}/*折线分平面根据直线分平面可知,由交点决定了射线和线段的条数,进而决定了新增的区域数。当n-1条折线原创 2016-05-07 18:34:44 · 662 阅读 · 0 评论 -
ACM算法最小公倍数
求最大公约数的算法小结:此算法属于数论,也基本的算法之一,十分重要,今天在化工大学比赛差点就废在这上面(1)辗转相除法:#include intmain(void) /* 辗转相除法求最大公约数 */ { int m,n, a, b, t, c; printf("Inp原创 2016-05-08 22:10:09 · 2731 阅读 · 0 评论 -
银行家算法
(1)银行家算法的数据结构 A、可利用资源向量Available。其中每个元素代表每类资源的数目。B、 最大需求矩阵Max。其中每个元素代表每个进程对于每类资源的最大需求量。Max[i,j]=K表示i进程对于j类资源的最大需求量为K。C、分配矩阵Allocation。其中每个元素代表每个进程已得到的每类资源的数目。D、需求矩阵Need。其中每个元素代表每个进程还需原创 2016-06-29 22:22:08 · 574 阅读 · 0 评论 -
HTML站内搜索引擎
对于一个网站来说,使用搜索引擎来进行站内搜索往往比自己编写的站内搜索更高效,并且不占用网站服务器的资源,下面是我搜集到的几个主要搜索引擎(Google和百度、雅虎)的站内搜索代码,使用时只需要将代码里的"www.williamlong.info"替换成你的网址即可。http://www.google.com/search">www.williamlong.inf原创 2016-07-25 11:20:12 · 7022 阅读 · 1 评论 -
时间复杂度和空间复杂度详解
算法的时间复杂度和空间复杂度合称为算法的复杂度。1.时间复杂度(1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或转载 2017-05-25 20:11:36 · 259 阅读 · 0 评论 -
hdoj2046
#includeusing namespace std;int main(void){ long long a[100]; int i,n; a[1]=1; a[2]=2; for(i=3;i a[i]=a[i-1]+a[i-2]; while(cin>>n) { cout原创 2016-05-06 18:30:15 · 340 阅读 · 0 评论 -
hdoj2044注意要用long long否则会溢出
#includeusing namespace std;int main(void){ int n,i,a,b; long long s[100]; while(cin>>n) { s[2]=1; s[3]=2; for(b=4;b { s[b]=s[b-1]+s[b-2]; } for(i=0;i {原创 2016-05-06 13:08:05 · 344 阅读 · 0 评论 -
快速排序 排序函数的个人小结
个人感觉排序很重要,快速排序更有逼格,哈哈哈!调用快速排序函数qsort时:int cmp(constvoid*a,const void*b)//比较函数;{ return *(int*)a-*(int*)b;}qsort(a,n,sizeof(int),cmp);调用普通排序函数sort时:bool c原创 2016-04-29 11:23:47 · 362 阅读 · 0 评论 -
hdoj2039,关键条件就是两边之和大于第三边,而且还得是double型
#include#includeusing namespace std;int main(void){ int n; double a,b,c; cin>>n; while(n--) { cin>>a>>b>>c; if(((a+b)>c)&&((a+c)>b)&&((b+c)>a)) cout else cout }原创 2016-04-29 18:17:05 · 1481 阅读 · 0 评论 -
hdoj2043
完整代码,感觉比较简洁,哈哈!#include#includeusing namespace std;int main(void){ char a[100]; int sum,i,n,b,c,d,e; cin>>n; getchar(); while(n--) { b=0原创 2016-04-29 21:24:40 · 362 阅读 · 0 评论 -
hdoj2034
#includeusing namespace std;int main(void){ int n,m,t,i,j,k,count,a[100],b[100],c[100]; while(cin>>n>>m&&(n||m))//n和m同时为0时终止; { t=0,k=0,count=0; for(i=0;i cin>>a[i];原创 2016-04-30 22:49:49 · 469 阅读 · 0 评论 -
hdoj2036多边形面积的求法
#include#includeusing namespace std;int main(void){ int n; int a[100],b[100],i,j,k; double s; while(cin>>n&&n) { s=0,i=0; for(i=0;i cin>>a[i]>>b[i]; a[n]=a[0],b[n]=b[0原创 2016-05-01 13:16:47 · 365 阅读 · 0 评论 -
hdoj2037
#includeusing namespace std;int main(void){ int n,i,j,k,s,a[100],b[100]; while(cin>>n&&n) { for(i=0;i cin>>a[i]>>b[i]; for(i=0;i for(j=0;j { if(b[j]>b[j+1])原创 2016-05-02 18:24:21 · 456 阅读 · 0 评论 -
hdoj2037详解(附带浅谈冒泡排序)
#includeusing namespace std;int main(void){ int n,i,j,k,s,a[100],b[100]; while(cin>>n&&n) { for(i=0;i cin>>a[i]>>b[i]; for(i=0;i { for(j=0;j { if(b[j]原创 2016-05-05 21:37:40 · 516 阅读 · 0 评论