由于你瞬间解决了小强多年以来的烦恼,小强十分高兴,于是他给大家讲了一个故事:“ 传说从前有个叫舍罕的印度国王,因为他的宰相发明了国际象棋,打算予以奖赏一番。国王问宰相想要什么,宰相对国王说:‘ 陛下,请您在这个棋盘的第一个格子里赏给我 1 粒麦子,在第二个格子里给 2 粒,第三个给 4 粒,以后每一个格子都比前一个多 1 倍,请您将这个棋盘上的 64 个格子全部摆满。’ 国王没宰相会算账,所以当即一口答应,殊不知若要满足宰相的这个看似简单的要求,全世界两千年也生产不出这么多麦子。这就是数学上著名的 ‘ 麦粒问题 ’。实际上最后颗数就是 2^0+2^1+2^2+…+2^63=2^64-1。由此可见一个小小的 2 有多大的威力!嘿嘿。” 小强笑得很诡异,大家都知道一场头脑的风暴又要来了 ……“ 下面我们来玩一个抢答游戏,我每次给大家一个非负整数 n,大家抢答一个整数 p,这个 p 满足关于 x 的方程 p^x=n 有整数解,由于 p 可能有多个,最小的就是正确答案!”

Input

输入一个整数 n (0<=n<=2^30),找出最小的整数 p,使 n=p^k,这里 k 也是整数。n 为-1 表示输入结束,并且该情况不作处理。

Output

对于每个输入,输出 p,如果不能找到最小解输出 "no answer"(不输出引号)。

解法:

枚举k,k为0到30之间的某个数。已知k和n就能求出p大致范围,用pow(n,1.0/k)近似,然后枚举p就能知道符合题目意思的p是否存在。

本来这是很简单的题目,但是有几个trap要注意,k为偶数,p最小为负数且p的绝对值在其取值范围内最大。

第二个是,n=1时,任意数除了零本身的零次方都为1,所以p可取无穷小的负数,所以输出no answer

代码:

#include <iostream>
#include <bits/stdc++.h>
using namespace std;typedef long long ll;ll cal(ll x,ll y){ll ans=1;for(int i=0;i<y;i++){ans*=x;}return ans;
}int main()
{ll n;while(scanf("%lld",&n)){if(n==-1)break;if(n==0){printf("0\n");continue;}if(n==1){printf("no answer\n");continue;}ll k=32;ll ans=1e17;int flag=0;for(k=31;k>1;k-=2){ll p= max(1LL,(ll)(pow(n,1.0/k))-5);for(;;p++){ll x=cal(p,k);if(x>n)break;if(x==n){ans=min(ans,p);flag=1;break;}}if(flag)break;}int flag1=0;for(k=2;k<=32;k+=2){ll p= (ll)(pow(n,1.0/k))+5;for(;;p--){ll x=cal(p,k);if(x<n)break;if(x==n){ans=min(ans,-p);flag1=1;break;}}if(flag1)break;}if(flag+flag1==0)printf("%lld\n",n);else printf("%lld\n",ans);}return 0;
}

ecnu 故事 数学相关推荐

  1. python与数学的故事_我与数学的故事作文

    作文学习中的数学故事(共10篇)生活中的数学故事作文今天老师上课讲了7 ,老师要求我们回家在生活中找7.我找到了很多7,我告诉爸爸:你的汽车牌号上有7:你的手机号码上也有7.爸爸听了高兴地说:你真是个 ...

  2. 学数学或物理学到 high 很刺激,是一种怎样的经历与感受?

    吴育昕 ,Google-Megvii-FAIR炼丹中 田渊栋 等 1346 人赞同 当年学线性代数. 一开始看的都是中规中矩的教材, 从行列式出发, 讲矩阵, 讲线性变换. 然后有一天没忍住, 看了那 ...

  3. 【教学类-29-02】20230402《门牌号-黏贴版打印数量调查教学实践(6层*5间)》-(中班《我爱我家》偏数学)

    背景需求 前文介绍了门牌号黏贴版的制作过程,及4款分层学具的参数设置.但是我很快又发现了两个问题 [教学类-29-01]20230401<门牌号(6层*5间)-黏贴版(中班<我爱我家> ...

  4. 基于功能连通性MRI对大脑皮层的局部功能分区进行划分

    人类大脑皮层是一层薄薄的折叠神经组织,为感觉和运动功能以及区分人类和其他动物的更高级的心理过程提供了基础.复杂的行为源于神经信号在不同皮层区域的网络之间的转换,这些区域被认为是神经处理的假定原子.因此 ...

  5. unity第三人称射击游戏_在游戏上第3部分完美的信息游戏

    unity第三人称射击游戏 Previous article 上一篇文章 The economics literature distinguishes the quality of a game's ...

  6. 重磅综述|大脑内在神经时间尺度:时间整合与分离

    我们不断地受到来自环境的各种时间尺度的外部输入的轰炸.大脑是如何处理这么多时间尺度的呢?最近的静息状态研究表明,内在神经时间尺度(INT)在单模态区(如视觉皮层和听觉皮层)持续时间较短,而在跨模态区( ...

  7. 数学家的这些迷惑行为,最后都成了神操作

    有句鸡汤名言说得好,你的气质里藏着你读的书.到了学界,应该再加上半句,你气质里还藏着你做过的学问.文学评论家文质彬彬,经济学家目光炯炯,地质学家风尘仆仆,但最可爱的是数学家,他们大智若愚. 历史上很多 ...

  8. Science:静息态fMRI可预测任务执行过程中大脑活动的个体差异

    我们在感知.思考和行动方式上都有所不同.我们的大脑在解决问题的方式上也有所不同.了解大脑活动的这些个体差异是神经科学的一个重要目标,因为它提供了一条将大脑和行为联系起来的途径. 通常,由实验任务引起的 ...

  9. 比如“古今数学思想”,BBC的“数学的故事”视频,一起看效果会更好

    偶然看见了浙大蔡天新教授的公开课.老师以几位数学大师作为重点和切入点介绍了数学在不同时期,不同国家的发展,非常新颖有趣.当然没有什么是完美无缺的.如果能更突出重点.应该认真听,如果能结合其它材料,比如 ...

最新文章

  1. 虚拟机安装CentOS以及SecureCRT设置【完美无错版】
  2. luogu P3455 [POI2007]ZAP-Queries (莫比乌斯反演 + 整除分块)
  3. mysql连接池失效_连接池隔天失效之异常处理
  4. 10分钟手把手教你运用Python实现简单的人脸识别
  5. 汉语自然语言处理工具包下载
  6. 网站登录入口| 网站收录入口| 网站登录大全
  7. 217 Contains Duplicate
  8. PTA-基础编程题目集-函数题 ……
  9. catch Floating point expection
  10. 如何将日志配置文件放入到Apollo配置中心并支持热更新
  11. 程序员,Linux 下如何避免从删库到跑路的悲剧?
  12. 一车abs线路怎么量_神木沥青拌合站烧火油怎么购买更划算
  13. mysql数据倾斜_sqoop数据倾斜解决实战
  14. 这么说吧,NIO很简单,其实就是个牛逼IO
  15. Windows下的TFTP传输文件
  16. 利用网络月赚10000元揭密
  17. 07-SparkStreaming
  18. 曝光!中国女性的私密数据分析…
  19. 智商黑洞(门萨Mensa测试)5
  20. win10xp化折腾指南

热门文章

  1. ArcEngine逆时针多边形转换为顺时针
  2. webug————显错注入
  3. 消费新品周刊 | 卡西欧发布本田赛车合作款手表;FILA推出时尚凉拖鞋系列
  4. 跟我学UDS(ISO14229) ———— 0x19 服务参数介绍
  5. HBuilder 打包 H5 APP 进行认证登录
  6. 阿里云EMAS|App隐私合规“免费”自动化检测
  7. 当他们说这些话时,爱就已经消失不在_伤感日志
  8. 成都IT培训多少钱_IT培训要多久?
  9. 一杯奶茶排队3万号,茶颜悦色到底有何魔力??
  10. 飞秋发送消息的快捷键改为 ctrl+enter