uva 10622——Perfect P-th Powers

题意:给定一个数n,求最大的一个数k使得n=x^k。

思路1:正规的做法是把这个素数分解,然后求指数的最大公约数就是所求(听说有人取了最小值也能过,数据水吧!),素数打表,分解+欧几里得并不麻烦!(注意分解质因子用long long)

思路2:既然是某个数的K次方,那就依次枚举K好了,反正最多只有32次,有点暴力哈!

code:

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <string>
#include <cmath>
using namespace std;

const double ep=1e-5;
int sol(int n)
{
int f=1;
if (n<0) f=-1;
for (int j=32;j>=2;j--)
{
int t=(long long)(pow(1.0*n*f,1.0/j)+ep)*f;
if (pow(t,j)==n)
return j;
}
return 1;
}
int main()
{
int n;
while (~scanf("%d",&n)&&(n!=0))
printf("%d\n",sol(n));
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381995.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

6174问题 --ACM解决方法

6174问题 描述 假设你有一个各位数字互不相同的四位数&#xff0c;把所有的数字从大到小排序后得到a,从小到大后得到b,然后用a-b替换原来这个数&#xff0c;并且继续操作。例如&#xff0c;从1234出发&#xff0c;依次可以得4321-12343087、8730-3788352、8532-23586174&#…

关于第三周——回顾与修正

回顾了一下上个周情况&#xff0c;发现自己存在很多问题&#xff0c;比如说懒就是其中一个特别严重的吧&#xff0c;给自己的计划不能够坚持下来&#xff0c;给自己安排的任务也不能按时完成&#xff0c;比如下个周要干什么&#xff0c;明天做那些题&#xff0c;虽然给自己规划…

A+B Problem III -- ACM解决方法

AB Problem III 描述 求AB是否与C相等。输入 T组测试数据。 每组数据中有三个实数 A,B,C(-10000.0<A,B<10000.0,-20000.0<C<20000.0). 数据保证小数点后不超过4位。输出 如果相等则输出Yes 不相等则输出No样例输入 3 -11.1 11.1 0 11 -11.25 -0.25 1 2 4样例输…

uva 10127——ones

题意&#xff1a;就是给定一个数n&#xff0c;然后求一个10进制都是1的数&#xff0c;使其能整除n&#xff0c;求其位数&#xff0c;思路&#xff1a;以前做BFS的时候遇到类似的题目&#xff0c;当时用队列long long 模拟的&#xff0c;这个也是&#xff0c;不过重点的是要不断…

vim的常用命令

vim &#xff08;Linux下的文本编辑器&#xff09; a 在光标后添加文本A 在本行行末添加文本i 在光标前插入文本I 在本行开始插入文本o 在光标下插入新行O 在光标上插入新行dd 删除光标所在行 &#xff08;2dd即删除此下的两行&#xff0c;3dd以此类推&#xff09;p 粘贴u 取消…

uva 10061——How many zero\'s and how many digits ?

题意&#xff1a;这道题开始是卡了很久的&#xff0c;题意是给定一个数n然后让你求B进制下n&#xff01;有多少个零&#xff0c;和有多少位数&#xff0c;咋一看&#xff0c;是高精度&#xff0c;如果数论不是很熟系。思路&#xff1a;开始是直接抛弃高精度的一来是存不下&…

Linux文件与目录管理常用命令

改变文件属性与权限 chgrp [-R] dirname/filename 改变文件所属用户组 -R 递归更改chown [-R] 账号名称:组名 dirname/filename 改变文件所有者chmod 改变文件权限 urwx 文件所有者权限为rwxgrw 所属用户组权限为rw-or others权限为r–ax 所有权限加上x权限(a-x 略) 创建新…

uva 10673 ——Play with Floor and Ceil

题意&#xff1a;给定两个数n和m&#xff0c;对于n/m一个向上取整&#xff0c;一个向下取整&#xff0c;然后得到一个方程即P*floor(n/m&#xff09;q*ceil(n/m)n;求该公式中p和q的值的大小。思路&#xff1a;很明显&#xff0c;扩展的欧几里得方程&#xff0c;直接带入扩展欧几…

uva 756—— Biorhythms

题意&#xff1a;就是给定三个生理周期&#xff0c;然后从d天开始&#xff0c;问经过多少天后&#xff0c;三个周期会再度重合&#xff01;思路&#xff1a;这个题以前做过&#xff0c;当然现在看来&#xff0c;正解应该使用同余模方程和中国剩余定理&#xff0c;不过值得庆幸的…

linux兴趣小组2017面试题浅析

linux兴趣小组2017面试题 1. 分析下列程序的输出. int main(int argc, char *argv[]) {int t 4;printf("%lu\n", sizeof(t--));printf("%lu\n", sizeof("ab c\nt\012\xa1*2"));return 0; } 若运行printf(“%d\n”,t); 结果为4&#xff0c;因为…

uva 701——The Archeologists\' Dilemma

题意&#xff1a;一个考古学家发现一些疑似外星人的数字&#xff0c;然后硬扯到2的n次方上&#xff0c;给定一个数&#xff0c;使其是2的n次方的前缀&#xff0c;然后求n&#xff0c;还有个要求即该数作为前缀的长度要小于总长度的一半。思路&#xff1a;想了很久不得思路的一道…

linux下搜狗输入法无法输入中文解决方法

今天打开电脑&#xff0c;突然发现之前一直用的很好的搜狗输入法突然炸了&#xff0c;竟然没法输中文&#xff0c;在谷歌了几个解决方法后&#xff0c;终于找到了一个能用的方法。记录下来&#xff0c;已备后用。 解决方法: 关闭搜狗输入法 killall fcitx删除配置文件 ~/.co…

uva 550——Multiplying by Rotation

题意&#xff1a;在一个进制内 比如十进制下179487 * 4 717948和9进制下17 * 4 71 给定三个数&#xff0c;一个是进制&#xff0c;一个数是该组数的最后一个数字&#xff0c;另外一个则是该组数中的一个因数&#xff0c;问该组数中另一个因数是多少位数。思路&#xff1a;由最…

linux与windows编码转化

最近在写实验报告时&#xff0c;由于在机房只能用windows系统&#xff0c;在程序没写完而转战linux时却总是发生出现乱码问题&#xff0c;之前修改几次无果&#xff0c;只好改为英文。今天特地抽出时间来解决这一问题&#xff0c;解决方法如下&#xff1a; 使用iconv命令: ico…

uva 138——Street Numbers

题意&#xff1a;一个老师闲来无事就从他家门口向前走&#xff0c;然后累加门牌数&#xff0c;最后发现向前走和向后累加到的门牌数一样&#xff0c;然后让求该老师家的门牌数&#xff0c;枚举出前6个。思路&#xff1a;假设门牌数为1-n&#xff0c;该老师的门牌号为m&#xff…

再见“小明爬楼梯”问题

在c语言期末考试中&#xff0c;再次见到了“小明爬楼梯”问题&#xff0c;而第一次见到是在某次面试题中&#xff0c;由于当时还没有学到递归部分&#xff0c;因此就仅仅把代码看了一下&#xff0c;然而其中包含的思想却没有弄清楚&#xff0c;因此在考试时见到该题一头雾水&am…

uva 10539——Almost Prime Numbers

题意&#xff1a;给定一个区间范围&#xff0c;然后问在这个范围之内有多少个数是素数的整数倍&#xff0c;就是能够化成一个素数乘方的形式思路&#xff1a;首先要打一张sqrt&#xff08;N5)大小的素数表&#xff0c;然后对在在这个区间的数依次进行枚举做因数分解&#xff0c…

linux下隐藏输入密码

在做课设时&#xff0c;因为在windows上写了一个输入密码时屏幕显示为***的函数&#xff0c;但是在移植到linux系统上时却有问题&#xff0c;提示有错误。 上网搜索&#xff0c;有人说getch()函数的头文件是curses.h,还有人说是conio.h, 但是在ubuntu系统中都不能使用&#xf…

uva 11105——Semi-prime H-numbers

题意&#xff1a;定义了一种H素数&#xff0c;改素数的定义是能够被4整除余数为1&#xff0c;然后给定一个n值&#xff0c;问1到n中有多少个只被分解成两个H素数的数&#xff0c;题目很绕&#xff0c;H素数和他要球的东西一直搞不明白&#xff01;思路&#xff1a;最好的办法是…

文件操作总结(一)

该部分将作为日常学习的总结&#xff0c;内容将会比较杂乱&#xff0c;只有整体上的主题——文件操作。 主要目录的存储内容 /bin 全称binary&#xff0c; 存放普通用户可执行的命令/boot 存放Linux内核及开机启动的相关文件/etc 存放系统的配置文件/usr 存放系统应用程序及相…