
杭电ACM
John_Ai
这个作者很懒,什么都没留下…
展开
-
杭电ACM_2089_不要62
这道题要注意潜在的超时问题。另外要注意的是,大数组应在main函数外初始化,若在main函数内初始化有可能导致栈溢出。#include<iostream>#include<string>using namespace std;int flag[1000000]; //大数组应定义在main函数外部 ,以免造成栈的溢出 void fun(){ stri...原创 2020-04-18 00:24:54 · 268 阅读 · 0 评论 -
杭电_2041_超级楼梯
这道题应用递归思想:假设要从第一级楼梯跳到第M级楼梯,最后一步共有两种跳法,要不就从第M-1级处跳一下,要不就从第M-2处跳二下。最后一步之前怎么跳的都不用管。那么表示跳法数量的函数可以写成fun(m)=fun(m-1)+fun(m-2),其中fun(1)=fun(2)=1。但是使用递归的方法会超时,所以用数组写,如下:#include<iostream>using nam...原创 2020-03-19 00:34:46 · 230 阅读 · 0 评论 -
杭电ACM_2036_多边形面积
此题关键是要会计算在坐标系下任意多边形的面积,公示为其中i=1,2,…,n;且当i=n时,上式中的行列式第二行为x0和y0。#include<iostream>#include<vector>#include<iomanip>using namespace std;struct cord{ double x,y;};int m...原创 2020-03-14 03:00:12 · 212 阅读 · 0 评论 -
杭电ACM_2098_分拆素数和
这道题要注意素数的判定方法,以及for循环边界的确定。#include<iostream>#include<cmath>using namespace std;bool is_prime(int num){ if(num==2||num==3) return true; for(int i=2;i<=sqrt(num);++i) if(num...原创 2019-09-03 22:51:28 · 270 阅读 · 0 评论 -
杭电ACM_2097_sky数
这道题中的十六进制数和十二进制数不需要规范地算出来,只要把其中的每位数字求出然后相加即可。#include<iostream>using namespace std;int sum_d(int a){ int sum=a/1000+(a/100)%10+(a/10)%10+a%10; return sum;}int sum_h(int a){ int sum=0...原创 2019-09-01 23:01:25 · 250 阅读 · 0 评论 -
航电ACM_2070_Fibbonacci Number
求斐波那契数列是可以用递归算法的,但是递归函数的时间开销会很大,所以编译器会不通过(显示超时),因此这里就不用递归了。#include<iostream>using namespace std;int main(){ int n; long long a[50]={1,1}; for(int i=2;i<50;++i) a[i]=a[i-1]+a[i-2];...原创 2019-08-21 21:47:39 · 209 阅读 · 0 评论 -
杭电ACM_2057_A + B Again
这道题如果直接把输入当作十六进制数来处理,那就会方便很多,所幸C++的头文件里提供了输入和输出十六进制数的控制符。#include<iostream>using namespace std;int main(){ long long a,b,sum; while(cin>>hex>>a>>b) { sum=a+b; if(s...转载 2019-08-14 23:03:10 · 214 阅读 · 0 评论 -
杭电ACM_2015_偶数求和
#include<iostream>using namespace std;int main(){ int n,m; while(cin>>n>>m) { if(n>100||m>n) { cout<<"input error!"<<endl; continue; } if(n%m==...原创 2019-04-01 20:50:39 · 178 阅读 · 0 评论 -
航电ACM_2020_绝对值排序
#include<iostream>#include<cmath>using namespace std;int main(){ int n; while(cin>>n) { if(n==0) break; if(n<0||n>100) { cout<<"input error."<<e...原创 2019-04-04 20:55:29 · 297 阅读 · 0 评论 -
杭电ACM_2039_三角形
这道题折腾了老半天,好不容易才通过。注意点:1)三条边形成三角形的几何条件;2)输入的三条边是正数,而不是正整数!#include<iostream>using namespace std;int main(){ int m; cin>>m; int yn[50]; for(int i=0;i<m;++i) { float a,b,c;...原创 2019-03-23 19:29:35 · 268 阅读 · 0 评论 -
杭电ACM_2011_多项式求和
#include<iostream>#include<iomanip>using namespace std;int main(){ int m; cin>>m; if(m>=100) { cout<<"input error!"<<endl; return -1; } int n[100]; flo...原创 2019-03-23 18:34:24 · 307 阅读 · 0 评论 -
杭电ACM_1170_Balloon Comes!
需要注意的是:在除法部分需要做一个条件判断,如果除法结果是整数,那么不加小数点;如果除法结果是小数,那么保留两位小数。#include<iostream>#include<string>#include<iomanip>using namespace std;int main(){ int t; cin>>t; if(t<...原创 2019-03-29 19:55:12 · 214 阅读 · 0 评论 -
杭电ACM_2007_平方和立方和
这道问题有一处需要注意的地方是,输入的两个整数不需要从小到大排列,程序应当能自动提取出两个数之间(包括端点)的所有连续整数。#include<iostream>using namespace std;int main(){ int low,high; while(cin>>low>>high) { int even=0,odd=0; ...原创 2019-03-18 21:15:16 · 244 阅读 · 0 评论 -
杭电ACM_1089-1096
这几道题是同一类型的输入输出练习。1089#include <iostream>using namespace std;int main(){ int a,b; while(cin>>a>>b) { cout<<a+b<<endl; } return 0;}1090#include <iostream...原创 2019-02-13 20:07:56 · 470 阅读 · 0 评论 -
杭电ACM_1012
#include &lt;iostream&gt;#include &lt;iomanip&gt;using namespace std;int main(){ double val[10]={1}; double elem[10]={1}; for(int i=1;i&lt;10;++i) elem[i]=elem[i-1]*i; for(int i=1;i&lt;10;+原创 2019-02-12 14:45:44 · 436 阅读 · 0 评论