08 2017 档案
摘要:打铁了。。。 就差一题。。。 比赛结束的那一瞬间,三个人的心一下子跌到了谷底。。 本来这场比赛,手速3题就能拿奖。。。 无奈,第一题pow失精,连续wa了10次。。 当时,整个人都要崩溃了。。。 好在犬神后来连A两题,让我们又看到了一丝希望。。 最后A题出来了,还剩一个小时,犬神卡在D题过不去了。
阅读全文
摘要:进入排序专题了。 这次我们要讲的是堆排序,而说到堆排序,肯定就免不了要了解一下堆这个数据结构((我们这里说的都是二叉堆)。 什么是堆呢? 堆就是一个完全二叉树,而完全二叉树。。。就是除了最后一层可以不满外(也可以满),其他层都是满的,并且最后一层的叶子节点都位于最左端的二叉树。 上图就是一个标准的完
阅读全文
摘要:本题题意:依次给出3个点P1,P2,P3,其中P2,P3是抛物线与直线的交点,P1是抛物线的顶点,求抛物线与直线的面积。 代码如下: 感觉又写了个垃圾代码.... 不过还是学到了点东西,这个最重要... 求抛物线方程用的是拉格朗日插值法,通过三点确定一个一元二次方程... 直线面积直接用梯形公式求了
阅读全文
摘要:本题题意:给出一个整数n,求出小于n的所有和n互素的数的数目。 代码如下: 这题真的学到了不少东西,首先是Euler函数(暴力超时,Euler 0ms). 什么叫Euler函数呢? Euler函数的作用是用来求小于n的所有和n互素的数的数目(没错,本题就是一个裸的Euler函数)。 各种数学证明我就
阅读全文
摘要:本题题意:给出最大公约数和其中一个数,求另一个最小的数与该数的最大公约数等于给出的数. 这题开始想偏了,后来还是直接暴力过了,汗~。 从2开始枚举除了数a外的所有数,直到找到第一个最大公约数为b的。
阅读全文
摘要:本题题意:参加party的人可能有p或q,问怎样切蛋糕,能满足两种情况,并使蛋糕的块数最少。 代码如下: (考虑p > q)其实这个还蛮烧脑的,切蛋糕的话,其中最大块的体积肯定是1/p,剩下的就是怎么切这p块蛋糕能够使蛋糕的块数最少呢,下面给个例图: 假设p=6,q=4,那么就如上图所示,切割痕迹重
阅读全文
摘要:本题题意:给出两个卫星分数形式的速度,求它们的相遇周期。 这道题一到手我整个人都是懵的...相遇周期是啥,完全不懂。后来百度了才知道就是求最小倍数,不过是分数形式的. 首先把通分,然后求出分子的最小公倍数lcm,若lcm可以整除分母,那么打印整数结果,否则约分后输出分数结果。
阅读全文
摘要:本题题意:给出n个数,求其中素数的个数. 代码如下: 由于本题的上限可达31bit,所以打表是不适用了,只能写个素数判定排除偶数,然后开方,直接暴力目测会超时。
阅读全文
摘要:本题题意:求两个数的最小公倍数. 代码如下: 很简单的一个欧几里德算法求出最大公约数,然后用两数乘积除以最大公约数就是结果。
阅读全文
摘要:本题题意:蝎子王搬家,洞的空间是V,共有N件物品要搬,每件物品在搬运过程中要占用Bi空间,搬运完后占用Ai,问蝎子王能否搬完所有的物品。 代码如下: 这道题真的是很难想清楚,后来查了题解才做出来,说是贪心B-A,B-A的含义是需要的预留空间,预留空间大的优先,然后相同情况下取实际空间更小的,可以为后
阅读全文
摘要:本题题意:给4个数,求所有的4位数组合,按升序打印. 代码如下: 本题用next_permutation可以十分简单的解决,唯一要考虑的就是判断下第一位不能是0,还有控制格式,注意使用前先sort一下,以保持升序。
阅读全文
摘要:本题题意:有n根棍子,给出两个属性长度l和重量w,当加工当前棍子的长度和长度均大于上一根棍子时,可以不重置机器,每次重置机器要花1min, 求最小时间。 代码如下: 这道题就是两个循环,每处理完一根棍子后,要记录当前棍子的属性,然后跟下一根比较,仅当当前棍子的两个属性都大于上一根棍子时才进行比较,比
阅读全文
摘要:本题题意:有n元经费,每种大米,每种大米单价p,重量h,求最大重量. 代码如下:
阅读全文
摘要:本题题意:有n种宝物,每个单位体积价值pi,体积mi,有一个体积为v的口袋,问最多可以装多少宝物。 代码如下: 这道题比较简单就是个标准的贪心,排序选最大的依次装满就行了。
阅读全文
摘要:本题的题意是:给出n匹马,每匹马都有一个固定的速度,结果有胜平负三种。 代码如下: 这道题错了很多次,后来发现原来结果有负的情况,改了之后就好了。
阅读全文
摘要:本题题意是:有一个走廊以及200组互相对着的房间,现在要在不同的房间之间送信,但走廊一次只能通过一个人,因此一旦两个人的路线有重复的部分,那么 就只能分两批走,送一次信要10分钟,现在给出n个人送信的路线,求他们所花的最少时间。 代码如下: 其实仔细想想就会发现每两个相对的房间可以划分为1个区域,这
阅读全文
摘要:本题的题意是:给出一行字符,让你统计该行字符中每个字母出现的次数,每行后跟一个空行(注意是每行), 代码如下: 这题需要注意的地方就是getchar()读到文件末尾时,返回的也是EOF。 还有局部变量是可以以”int a[27] = {0}“这种形式进行初始化的。 再就是注意判断非字母字符。
阅读全文
摘要:这道题的题意:给出一个运算符和2个操作数,打印运算结果,需要注意的是如果结果不是整数,那么输出2位浮点数. 代码如下: 这是本人第一次写IO,遇到了一个比较坑的问题。 大家要注意,C/C++的函数参数是从右到左传入的。 因此输入的时候上述三个函数的调用顺序是getchar(),IO::scan,IO
阅读全文
摘要:这道题的题意给出多个字符串,计算每个字符串每一位的下标与对应值乘积的和,其中A-Z对应1-26,空格对应0,遇到#结束输入. 下面是代码: 注意要用getchar(),不能用scanf("%s",a),不然无法处理空格. 另外注意&的优先级.
阅读全文
浙公网安备 33010602011771号