E-rin和快速迭代

题目描述

rin最近喜欢上了数论。

然而数论实在太复杂了,她只能研究一些简单的问题。

这天,她在研究正整数因子个数的时候,想到了一个“快速迭代”算法。设 f(x)f(x)f(x)f(x)f(x)f(x)f(x)f(x)f(x) 为 xxxxxxxxx 的因子个数,将 fffffffff 迭代下去,rin猜想任意正整数最终都会变成 222222222 。

例如:f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2f(12)=6,f(6)=4,f(4)=3,f(3)=2 。

她希望你帮她验证一下。她会给你一个正整数 ,让你输出它在迭代过程中,第一次迭代成 222222222 的迭代次数。

输入描述:

一个正整数 nnnnnnnnn(3≤n≤10123≤n≤10123≤n≤10123≤n≤10123 \le n \le 10^{12}3≤n≤10123≤n≤10123≤n≤10123≤n≤1012)

输出描述:

一个正整数,为 nnnnnnnnn 迭代至 222222222 的次数。

示例1
12
4
*/

思路如下

暴力求解这一题,让我们求某个数的因子,我们就直接求(但是还要稍微优化一下)

题解如下

#include<iostream>
using namespace std; long long find(long long n)
{
long long i; //注意⚠️这里的i一定要是 long long 否则 i * i 超过int 范围
int cnt = 0;
for(i = 1; i * i < n; i ++)
if(n % i == 0)
cnt += 2;
return cnt + (i * i == n);
} int main()
{
long long n;
scanf("%lld", &n);
long long int tim = 0; while(n != 2) n = find(n),tim ++; printf("%lld", tim); return 0;
}

牛客寒假基础集训营 | Day1 E-rin和快速迭代(暴力 + 优化)的更多相关文章

  1. 牛客寒假基础集训营 | Day1 G-eli和字符串

    G-eli和字符串 题目描述 eli拿到了一个仅由小写字母组成的字符串. 她想截取一段连续子串,这个子串包含至少 kkkkkkkkk 个相同的某个字母. 她想知道,子串的长度最小值是多少? 注:所谓连 ...

  2. 牛客寒假基础集训营 | Day1 J题—u's的影响力(水题)

    Day1 J题-u's的影响力 有一天,kotori发现了一个和lovelive相似的游戏:bangdream.令她惊讶的是,这个游戏和lovelive居然是同一个公司出的! kotori经过一段时间 ...

  3. 牛客寒假基础集训营 | Day1 D-hanayo和米饭

    D-hanayo和米饭 题目描述 hanayo很喜欢吃米饭. 有一天,她拿出了 nnnnnnnnn 个碗,第一个碗装了 111111111 粒米饭,第二个碗装了 222222222 粒米饭,以此类推, ...

  4. 牛客noip前集训营(第一场)提高T1

    链接:https://www.nowcoder.com/acm/contest/172/A来源:牛客网 题目描述 小N得到了一个非常神奇的序列A.这个序列长度为N,下标从1开始.A的一个子区间对应一个 ...

  5. 2020牛客NOIP赛前集训营-普及组(第二场)A-面试

    面 试 面试 面试 题目描述 牛牛内推了好多人去牛客网参加面试,面试总共分四轮,每轮的面试官都会对面试者的发挥进行评分.评分有 A B C D 四种.如果面试者在四轮中有一次发挥被评为 D,或者两次发 ...

  6. 2020牛客NOIP赛前集训营-普及组(第二场) 题解

    目录 T1 面试 描述 题目描述 输入描述: 输出描述: 题解 代码 T2 纸牌游戏 描述 题目描述 输入描述: 输出描述: 题解 代码 T3 涨薪 描述 题目描述 输入描述: 输出描述: 题解 代码 ...

  7. 「牛客CSP-S2019赛前集训营2」服务器需求

    传送门 NowCoder 解题思路 考虑一种贪心选择方法:每次选出最大的 \(m\) 个 \(a_i\) 进行覆盖. 那么就会出现一种特殊情况,最高的那个 \(a_i\) 需要多次选择,而且不得不每次 ...

  8. 「牛客CSP-S2019赛前集训营1」仓鼠的石子游戏

    传送门 NowCoder 解题思路 考虑这样一件事:在任何的同一个石圈,后手肯定会输. 证明很简单,手玩一下就可以大致意会. 但是有一种特殊情况,就是大小为1的圈,这种圈就是起到一次交换先后手的作用, ...

  9. 2020牛客NOIP赛前集训营-提高组(第三场)C-牛半仙的妹子Tree【虚树,最短路】

    正题 题目链接:https://ac.nowcoder.com/acm/contest/7609/C 题目大意 给出\(n\)个点的一棵树,\(m\)个时刻各有一个操作 标记一个点,每个点被标记后的每 ...

随机推荐

  1. ES6—get 与 set

    在类里面可以去定义一些getter和setter,getter可以得到一些东西的方法,setter可以设置东西 class Chef{ constructor(food){ this.food = f ...

  2. 前端要了解的seo

    一.搜索引擎工作原理 当我们在输入框中输入关键词,点击搜索或查询时,然后得到结果.深究其背后的故事,搜索引擎做了很多事情. 在搜索引擎网站,比如百度,在其后台有一个非常庞大的数据库,里面存储了海量的关 ...

  3. gulp VS grunt

    前公司代码一直用grunt部署, 偶然了解gulp后:学习gulp并用gulp和grunt在一小项目中实践,对两者之间的用法及区别有所了解后总结这一篇小博文:本文根据实战的项目配置文件,简单讲解实现相 ...

  4. Excel表格转Json数据结构

    Excel表格转Json数据结构 辗转了好几个项目,每个项目的导表工具都巨难用,速度慢,潜规则多,扩展性差,不易于调试.Sqlite,Json,Lua,Xml各种格式都用过. 举个例子: 大多数导表工 ...

  5. .Net Core 实现图片验证码

    记录自己的学习,参考了网上各位大佬的技术,往往在登录的时候需要使用到验证码来进行简单的一个校验,这边使用在.net core上进行生成图片二维码 思路很简单=> 生成一个随机数->保存到服 ...

  6. 在d盘创建文件夹,里面有aaa.txt/bbb.txt/ccc.txt,然后遍历出aaa文件夹下的文件(新手)

    //导入的包.import java.io.File;import java.io.IOException;//创建的一个类.public class zy { //公共静态的主方法. public ...

  7. 039.集群网络-Pod和SVC网络实践

    一 Pod和SVC网络 1.1 实践准备及原理 Docker实现了不同的网络模式,Kubernetes也以一种不同的方式来解决这些网络模式的挑战.本完整实验深入剖析Kubernetes在网络层是如何实 ...

  8. 微商贴吧企业新浪微博怎么找客户_怎么做好seo

    写的几篇文章对于seo的引流量方面的 怎么做好网络seo优化之SEO项目团队组建 品牌营销_中小企业网络推广的办法 微商怎么引流客源?微商没有客户的解决办法?下 微商怎么引流客源?微商没有客户的解决办 ...

  9. abp(net core)+easyui+efcore实现仓储管理系统——入库管理之五(四十一)

    abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...

  10. 测试工程师需要了解的shell变量知识

    欢迎访问个人博客 什么是变量 本地变量:手动定义的,在当前系统的某个环境下才能生效,作用范围小 普通变量: 单引号:原字符输出,变量名='变量值' ➜ shell name='tom' ➜ shell ...