
ACM
记录自己在学习算法路上的一些心得
辜 月
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
zoj3714
这题主要的问题在于所有的人其实是一个圈而不是一排,也就是说最后的人是可以跟排头结合进行相加的#include<iostream>#include<algorithm>#include<cstring>#include<cmath>using namespace std;int main(int argc, char** argv) { int T,N,M,k; cin>>T; while(T--) { cin>>N原创 2020-10-02 22:28:28 · 129 阅读 · 0 评论 -
Fibonacci in the Pocket
Fibonacci in the Pocket去年四月份第一次参加Acm比赛时的题目 想了半天都没得出如何证明是第一个奇数还是第二个奇数- - 那时候脑子估计瓦特了吧题意:给出a,b两个数,要求配合斐波那契数列从第a个数加到第b个数求和,如果是奇数输出1 偶数输出0 题目给出a,b范围为大于一小于 101000010^{10000}1010000显然只能用字符数组来解决这道问题了主要思路:...原创 2020-02-16 16:17:17 · 260 阅读 · 0 评论 -
经典算法解题实战
String - 字符串(一)本章主要介绍字符串相关题目。处理字符串操作相关问题时,常见的做法是从字符串尾部开始编辑,从后往前逆向操作。这么做的原因是因为字符串的尾部往往有足够空间,可以直接修改而不用担心覆盖字符串前面的数据。摘自《程序员面试金典》...原创 2020-02-15 16:48:17 · 367 阅读 · 0 评论 -
杨辉三角与组合数
杨辉三角与组合数 相信大部分OIer已经对杨辉三角很熟悉了,我第一次做杨辉三角的时候是刚学完for循环,有一道题是打印杨辉三角的,那时起,我就对这个几何图形的构造方式充满了兴趣。最近,在老师的引导下,我学习了有关杨辉三角的一个小秘密。本文将简单介绍杨辉三角与组合数之间的联系。杨辉三角#include<iostream>usi...转载 2020-02-13 22:16:19 · 381 阅读 · 0 评论 -
错排问题详解
错排问题n个有序的元素应有n!个不同的排列,如若一个排列使得所有的元素不在原来的位置上,则称这个排列为错排;有的叫重排。错排公式递推关系为求其递推关系,分两步走:第一步,考虑第n个元素,把它放在某一个位置,比如位置k,一共有n-1种放法;第二步,考虑第k个元素,这时有两种情况:(1)把它放到位置n,那么对于除n以外的n-1个元素,由于第k个元素放到了位置n,所以对剩下n-2个元素的错排...原创 2020-02-09 21:25:04 · 1267 阅读 · 1 评论 -
HDU第11页(入门)
Acm铁牌选手成长记-HDU11页ASCII码排序计算两点间的距离计算球体积求绝对值成绩转换第几天?求奇数的乘积平方和与立方和数值统计求数列的和水仙花数多项式求和素数判定蟠桃记青年歌手大奖赛_评委会打分偶数求和ASCII码排序#include<iostream>#include<cstdio>#include<cstring>#include<c...原创 2020-02-04 22:01:35 · 725 阅读 · 0 评论 -
ACM算法:快速幂取模(详细)
**快速幂取模的用途:**在ACM这类竞赛中,可能会遇到指数型的数据取模问题,这个时候如果直接用int或者long long储存,就有可能会超出计算机整数的存取范围,而导致数据出错。所以我们需要一种方法进行计算。而这种方法就是我们这次要讲到的快速幂取模(简称快速幂)。这种算法在时间和空间上都做了尽可能的优化,所以学会之后,会觉得非常好用。**快速幂取模的思路:**快速幂实现的最基本的理论就是...转载 2020-02-06 20:50:59 · 943 阅读 · 0 评论 -
O(1), O(n), O(logn), O(nlogn)
由于平时接触算法比较少,今天看资料看到了O(1),都不知道是什么意思,百度之后才知道是什么意思。描述算法复杂度时,常用O(1), O(n), O(lognlognlogn), O(nlognnlognnlogn)表示对应算法的时间复杂度,是算法的时空复杂度的表示。不仅仅用于表示时间复杂度,也用于表示空间复杂度。O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长量之间的关系。其中的n...转载 2020-02-06 21:26:58 · 410 阅读 · 0 评论 -
团体程序设计天梯赛-练习集
这题主要是找到行数和给定n的关系从题目给的案例里我们可以看出每个沙漏的第一行符号的数量其实就是沙漏的层数,这就很好办了 假设层数为5 每个沙漏所需要的符号数量公式为(5+3)2+1我们可以利用循环来找到层数接下来就是打印空格和的关系 随着层数x的增加 每层的符号数量-2,直到(x-1)/2层变为一个后 又开始增加数量+2而空格和层数的关系为x-1(x<(x-1)/2)| x-x(x...原创 2020-01-21 18:45:29 · 808 阅读 · 0 评论 -
欧几里得算法详解
欧几里得算法简介: 欧几里德算法又称辗转相除法,是指用于计算两个正整数a,b的最大公约数。应用领域有数学和计算机两个方面。计算公式gcd(a,b) = gcd(b,a mod b)还有另一种求两数的最大公约数的方法是更相减损法。举例: 假如需要求 1997 和 615 两个正整数的最大公约数,用欧几里德算法,是这样进行的:1997 / 615 = 3 (余 152)615 / 152 =...原创 2020-02-08 19:25:13 · 19287 阅读 · 1 评论