
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
闭源操作系统(如 Windows)依赖的是“商业契约”:你付钱,我给你一个黑箱子,承诺你不出错。开源操作系统(如 Linux)依赖的是“社会契约”:大家共同维护,出了问题你可以改,改完了再分享给别人。

💡分析细节:通过 “y = x” 这个函数,将方阵一分为二,左上、右下,通过对右下的某一列分析(不包含坐标轴),横坐标不变、恒为 x,纵坐标在 1~x 之间徘徊,再通过分析发现,为题解的点,其纵坐标均与横坐标互质,由此,就可以推断出,对于右下部分,题解为其 1~n 的欧拉函数之和,左上和右下一样,所以乘2,多余的一个点补掉了坐标轴上的那个点,本编介绍两道欧拉函数经典OJ题,均属于4颗星级别,就是

0:就代表 i 和 p[j] 是互质的,就可以用欧拉函数的性质三,x 的欧拉函数就是 (i 的欧拉函数)* (p[j] 的欧拉函数),p[j] 是质数,又可以用欧拉函数的性质一,p[j] - 1,对于一个数 n,在 1~n 中,与 n 互质的数的个数,就是欧拉函数,用。由此可知,在求解某一个数的欧拉函数时,我们只需要知道它的质因数就可以求解。问题背景:需要知道 [1,n] 中,每个数的欧拉函数。如

首先在C++里面,它是有属于自己的头文件的,但是他也可以和C语言中的一些头文件进行兼容,毕竟C++是C语言的更高层次延申啦,不过兼容的头文件需要转化成C++形式的头文件,才能在C++当中运用。:在C语言中,对字符串的解释与在C++中对其的解释是一样的(用英文双引号括起来的部分,当然包括双引号本身,统称为字符串,所谓的部分,你可以是一长串的英文或者是中文,也可以是单个的字母啥的,甚至是可以不放东西,

找到一个质数 x 的时候,我们可以从该数的 x 倍向后筛,因为小于 x 的倍数一定被之前的筛过了,例如:5 * 2,变个式,2 * 5,其实就是在找到质数 2 的时候已经筛过了。素数的判定那一块讲的是如何判断一个数是素数,如果此时想知道 [1,n] 中有多少个素数,或者是 [1,n] 中的素数里面,第 k 个素数是多少?任意大于 1 的质数,它的 k(k > 1) 倍就是合数。🤡从前往后遍历每个

🐻两个质数差值最大,就是遍历 p数组 从小质数到大质数遍历,第一个符合题目条件的就是两个差值最大的质数,如何判断,n - a = b,看看 b 这个质数有没有被标记上,没有就是质数,st[n - a] = false。🐻借助素数的判定中用试除法从 [1,sqrt r] 进行试除的原理,在筛质数里面,我们可以用 [1,sqrt r] 中的质数去筛掉 [l,r] 里面的合数。🦓测试用例会给 L

📌n 的所有因数中,不会出现两个因数同时大于 sqrt(n) 的情况;所以,枚举 [2,sqrt(n)] 中所有的数,如果能整除 n ,就一直处除下去,如果最后剩的是大于 1 的数,那就是大于 sqrt(n) 的因子。但是如果是 2 的倍数,比如 16,则会达到最优的 O(log n)。枚举一个一个阶乘数,因为是连乘,所以可以用这种方式,如果想先算完阶乘值再质因数分解,数太大了🙅。如果我们提

有一组数据在数组当中存储,我们默认第一个数为有序的,然后从他后面的数开始,先用一个变量把数据值保存,把这个数值在数组中对应的位置空出来,我们需要拿着这个数值和他前面的值一次进行比较,比较会出现两种情况:一、比前面的值小,前面的值要往后挪动到空位,又有新的空位,更新一下空位以及继续要比较的前一个数;,借助前后指针,一开始前指针指向key,后指针指向key+1位置,后指针指到的如果是小于key的值,前

,这始末宽度差就是这条时空通道的真实宽度,而被private和protected所修饰的部分,就像是被访问空间的禁地般,当然,这个禁地的领域范围计算与空间通道计算方式一样,对于禁地来说,设置着作用域访问操作符 (::)这样的令牌,如果有这禁地的访问令牌也是一样可以拜访禁地的。上面提到过,用类类型实例化出的对象并不包含成员函数,成员函数是放在公共代码区的,等待着对象调用,为了方便区别是哪个对象的,就

这题步骤就是正常动态规划五步走,只是由于物品不是无限多个,选的那几种情况就推不了通式了,循环能做,优化用二进制优化。f[i][j]表示:在前 i 个物品中挑选,在不超过背包承重 j 的情况下,所获的最大价值。解题算法:空间优化的动态规划 or 二进制优化:多重背包 -> 01背包(空间优化)f[i][j]表示:在前 i 物品挑选,不超过当前已有资产M,所获的最大利润。这题的本质是股票问题,贪心用的








