宝藏例题(欧几里得算法+素数的三种境界………)

Posted hanwangyyds

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了宝藏例题(欧几里得算法+素数的三种境界………)相关的知识,希望对你有一定的参考价值。

1,写代码将三个数从大到小输出

底层逻辑:

  • 首先,定一个不变的顺序,A>B>C-------------三个坑
  • 再想着把三个数顺序的放在三个坑中
  • 假设三者的大小关系进行排序,需要进行三次
  • 临时变量tmp不需要重新设置

宝藏例题(欧几里得算法+素数的三种境界………)_欧几里得算法



2,计算最大公约数---------辗转相除法/欧几里得算法


%作为运算符是用来取余的,/是除法运算。

例如:除法运算式

65 ÷8  = 8余1

那么

65 / 8 = 8

65 %8 = 1

宝藏例题(欧几里得算法+素数的三种境界………)_欧几里得算法_02

    TIP:

  • 对%和/概念的区分,还需注意(巧计:在计算最大公约数时,用的都是%)
  • 在运用while循环时,()内为判断条件,等于0就是假,直接跳出。所以可以利用这一特性,当取模为0时,就跳出循环。

3,判断1000~2000年的闰年

方法:

宝藏例题(欧几里得算法+素数的三种境界………)_辗转相除法_03

这二者均是闰年。

宝藏例题(欧几里得算法+素数的三种境界………)_欧几里得算法_04

宝藏例题(欧几里得算法+素数的三种境界………)_最大公约数_05

两种方法

&&并且

||    或者


4·打印素数

素数的定义:只能被1和自身整除的数为素数。

这类代码需要分类讨论。

宝藏例题(欧几里得算法+素数的三种境界………)_素数三种境界_06

TIP:分类时应该想清楚另一种情况,为何会跳出来,应该是i==j

另一种分类(进阶版)

宝藏例题(欧几里得算法+素数的三种境界………)_素数三种境界_07

优点:代码形式类似,但试除的次数少了许多。

至尊版:

宝藏例题(欧几里得算法+素数的三种境界………)_欧几里得算法_08

在奇数里面找素数,偶数直接跳过,时间直接节省了一半

自我反思:在第二个for循环括号问题的处理上,老是出问题!

宝藏例题(欧几里得算法+素数的三种境界………)_素数三种境界_09


以上是关于宝藏例题(欧几里得算法+素数的三种境界………)的主要内容,如果未能解决你的问题,请参考以下文章

P2403 [SDOI2010]所驼门王的宝藏

宝藏拼图神秘上线!三种玩法刷爆朋友圈—小姐姐直呼太上瘾了!!

题解 P2403 [SDOI2010]所驼门王的宝藏

发现一个宝藏 Python 库,玩社区发现算法的不能错过!

暴力算法之2141 第N个智慧数+1941 找宝藏+1879 私密日记

《算法竞赛进阶指南》0x56状态压缩DP AcWing529 宝藏