- 博客(3)
- 收藏
- 关注
原创 ACM第三周
1.二分法二分法是利用折半查找的方法,来进行查找所需要的数据比一般顺序循环方法查找所需时间较短,可以优化程序运行时间。不过,二分法只适用于非递增,或者非递减的数列举个栗子:已知a[i+1]>=a[i];求某一值的下标int l,r,a[100],x;scanf("%d",&x);l=0;r=99;while(l<r){ int mid=(l+r)/2;...
2018-11-29 12:49:33 117
原创 ACM集训队第二周
1.快速乘快速乘相对于一般乘法具有优化降低时间复杂度的特点,可以减少运行的时间。其原理就是ab将其中一个数字转化为二进制再进行分步相乘,求出最后总和栗如:25=2*(101)2=24+21=10int ans=0;while(b){ if(b%2) { ans+=a; } a*=2; b/=2;}2.快速幂同快速乘一样,快速幂也可以降低时间复杂度,减少运行的时间。...
2018-11-22 22:28:59 154
原创 ACM集训队第一周
1.前缀和前缀和计算可以减少时间复杂度,提高运行速度对于求每一项均是前几项总和的情况下的部分几项和或者某一单项的时候使用一般写成ans[i]=ans[i-1]+a[i];2.EOFEOF即是end of file的缩写=EOF表示文件结尾,“!=EOF”表示文件还没有结束。用于多组(不定组)数据输入时如 while(scanf()!=EOF);3.哈希hash哈希即定义一个数组...
2018-11-22 18:50:37 247
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人