一、回顾昨日
昨天是九日集训的第一天,学的内容主要是C语言中常用的数学函数,来来来,背一背,看看还记得多少。
求x的n次方/幂: pow(x,n)
求x的算术平方根: sqrt(x)
x向上取整: ceil(x)
ceil:天花板
x向下取整: floor(x,n)
floor:地板
求x的绝对值: fabs(x,n)
上述所有函数都是返回的double类型的值。
二、今日所学
三、解题记录
要是不是跟着英雄哥的脚步来,我自己铁定把这题想得贼复杂。
考虑整数 n 的所有因子,将它们升序排列,就这句话,我第一想法就是:“啊?那我是不是要把整数n所有的因子找出来,然后再继续排序,找到第k个因子再返回……”
事实证明,我这个憨憨一旦进入一个固定思维,就扎根了,像我妈说的,就是头犟驴,拉都拉不回来。
这么简单的题目,直接从头到尾循环嘛,找个计数器来记录因子数,能循环到第k个数,也就是计数器等于k的时候,直接返回当前因子。当循环结束,也就表示找不到第k个因子,返回-1。
#367 有效的完全平方数
1 <= num <= 2^31 - 1,提示已经给出num的范围了,而int
类型的最大值为2^31 - 1
,即2147483647。所以我第一次提交的时候只想到了i*i
一定会溢出【超出范围】,只将i*i
的结果强转为long long
类型,但没想过在强转之前就已经超出范围了,我不报错谁报错,简直蠢哭!!!
至于剩下的其他的题:记得unsigned int 0~4294967295
就欧了。
四、总结
题是越做越熟练的,也不要总是用一个想法去解题,转换思维很重要!!!还有,人生谏言:不要随便立flag!!!
昨天我还讲打完篮球后洗漱完上床睡觉,确实是这样做了,but,但是,然而是我被蚊子叮了一晚上,早晨也没起来,我睡了一上午,都觉得自己废了,英雄哥的直播也没看~~~,明天也不晓得起得来不,希望你们能在英雄哥的直播间蹲到我!