zoukankan      html  css  js  c++  java
  • 快速迭代

    题目:

    设 fx为x的因子个数
    将f迭代下去,rin猜想任意正整数最终都会变成2。
    给你一个正整数n
    让你输出它在迭代过程中,第一次迭代成2的迭代次数。

    输入描述: 一个正整数n
    输出描述: 一个正整数,为n迭代至2的次数。

    输入
    12

    输出
    4

    说明
    12的因子:1,2,3,4,6,12。共6个。
    6的因子:1,2,3,6。共4个。
    4的因子:1,2,4。共3个。
    3的因子:1,3。共2个。
    12 → 6 → 4 → 3 → 2 , 故迭代了4次。

     1 n = int(input())
     2 sum = 0
     3 while n!=2:
     4     cnt = 0
     5     i = 1
     6     while i*i<n:
     7         if n%i==0:
     8             cnt+=1
     9         i+=1
    10     if n==i*i:
    11         n=2*cnt+1
    12     else:
    13         n=2*cnt
    14     sum+=1
    15 print(sum)
  • 相关阅读:
    作业16
    递归函数
    三元表达式与生成式
    迭代器与生成器
    作业15
    装饰器
    作业14
    string的入门与进阶
    修理牧场(优先队列)
    旅游规划
  • 原文地址:https://www.cnblogs.com/Yuuuukino/p/12290785.html
Copyright © 2011-2022 走看看