Minimal Power of Prime
题意:输入n,求所有质因子幂的最小值。n奇大无比。
思路:先对n所有n开五次方根的质因子约完,然后如果没有除尽的话,因子最多也就4个了,所以幂数大于1的情况有p1^4,p1^3, p1^2 对于其他情况肯定有幂为1的。
然后注意一下精度问题。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#define ll long long
using namespace std;
int a[];
int b[];
ll qp(ll x, int y) {
ll ans = ;
for(int i=;i<=y;i++) ans*=x;
return ans;
}
int main()
{
int t,k=;
for(int i=;i<=;i++)
{
if(b[i]==)
{
a[k++]=i;
for(int j=i+i;j<=;j+=i)
{
b[j]=;
}
}
}
while(~scanf("%d",&t))
{
while(t--)
{
long long n;
scanf("%lld",&n);
int y=powl(n,/5.0);
// printf("y:%d\n",y);
int m=;
for(int i=;i<k;i++)
{
// printf("%d----\n",a[i]);
if(a[i]>y)
break;
if(n%a[i]==)
{ int r=;
while()
{
if(n%a[i])
{
break;
}
n/=a[i];
r++;
}
m=min(m,r);
} }
//printf("%lld\n",n);
if(n!=){
long long y4=powl(n,/4.0);
long long y3=powl(n,/3.0);
long long y2=powl(n,/2.0);
if(qp(y4,)==n||qp(y4+,)==n||qp(y4-,)==n)
{
m=min(m,);
}
else if(qp(y3,)==n||qp(y3+,)==n||qp(y3-,)==n)
{
m=min(m,);
}
else if(qp(y2,)==n||qp(y2+,)==n||qp(y2-,)==n)
{
m=min(m,);
}
else
{
m=min(m,);
}
}
printf("%d\n",m); }
}
}
Minimal Power of Prime的更多相关文章
- 2019杭电多校第四场hdu6623 Minimal Power of Prime
Minimal Power of Prime 题目传送门 解题思路 先打\(N^\frac{1}{5}\)内的素数表,对于每一个n,先分解\(N^\frac{1}{5}\)范围内的素数,分解完后n变为 ...
- 2019HDU多校Minimal Power of Prime——分段讨论&&思维
题目 将 $n$($1 < n \leq 10^{18}$)质因数分解,求质因数幂的最小值. 分析 直接质因数分解,不太行. 可以这样想,对小区间质因数分解,n变小了,再枚举答案. 打印1-10 ...
- 2019hdu多校 Minimal Power of Prime
题目链接:Click here 题目大意:求一个数分解质因数后的最小幂指数 Solution: 首先,我们肯定是不能直接暴力求解的 我们先考虑筛出1e4范围以内的所有质数,把x所有这个范围内的质因子筛 ...
- HDU 6623 Minimal Power of Prime
Time limit 1000 ms Memory limit 65536 kB OS Windows 中文题意 给一个数n,设将n质因数分解后可以得到 \[n=\prod_{i=1}^{\omega ...
- HDU 6623"Minimal Power of Prime"(数学)
传送门 •题意 给你一个大于 1 的正整数 n: 它可以分解成不同的质因子的幂的乘积的形式,问这些质因子的幂中,最小的幂是多少. •题解 定义 $ans$ 表示最终答案: ①如果 $ans \ge 5 ...
- HDU 6623 Minimal Power of Prime(数学)
传送门 •题意 给你一个大于 1 的正整数 n: 它可以分解成不同的质因子的幂的乘积的形式,问这些质因子的幂中,最小的幂是多少. •题解 把[1,10000]内的素数筛出来,然后对于每个素$P$数遍历 ...
- HDU 6623 Minimal Power of Prime(思维)题解
题意: 已知任意大于\(1\)的整数\(a = p_1^{q_1}p_2^{q_2} \cdots p_k^{q_k}\),现给出\(a \in [2,1e18]\),求\(min\{q_i\},q ...
- [2019杭电多校第四场][hdu6623]Minimal Power of Prime
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6623 题目大意为求一个数的唯一分解的最小幂次.即120=23*31*51则答案为1. 因为数字太大不能 ...
- 2019 Multi-University Training Contest 4 - 1010 - Minimal Power of Prime
http://acm.hdu.edu.cn/showproblem.php?pid=6623 题意,给50000个1e18级别的数N,求它质因数分解里面的最小的指数(不算0) 比赛的时候给划了一个1e ...
- 【HDOJ6623】Minimal Power of Prime(Powerful Number)
题意:给定大整数n,求其质因数分解的最小质数幂 n<=1e18 思路:常规分解算法肯定不行 考虑答案大于1的情况只有3种:质数的完全平方,质数的完全立方,以及p^2*q^3,p,q>=1三 ...
随机推荐
- Python算法每日一题--001--给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [ ...
- 应用安全-工具使用-Burpsuite
A cheat sheet for PortSwigger Burp Suite application security testing framework. Send to Repeater Ct ...
- URL的‘#’号
转载自:传送门 去年9月,twitter改版. 一个显著变化,就是URL加入了"#!"符号.比如,改版前的用户主页网址为 http://twitter.com/username 改 ...
- js 解决函数加载的问题
var queue = function(funcs, scope) { (function next() { if(funcs.length > 0 ...
- CentOS安装ruby, Haskall,io语言
安装ruby yum install ruby irb rdoc 安装Haskall yum install ghc 安装io语言 安装io语言,需要先安装cmake不过不要使用yum来进行安装,yu ...
- tmux多终端工具
在Linux服务器上没有办法像在桌面系统一样开多个终端,所以有时后进行一些操作不是太方便,所以可以使用tmux工具,创建多个终端. 这里仅仅是简单的介绍一下如何创建多个终端和进行多个终端之间切换,tm ...
- mysql双主+keepalived架构
架构展示 操作系统 centos6.5 数据库 mysql5.7 master1 10.0.254.148 master2 10.0.254.147 VIP 10.0.254.88 (keepaliv ...
- jquery实现全选,反选,取消的操作
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- owaspbwa tickets
owaspbwa tickets 来源 https://sourceforge.net/p/owaspbwa/tickets/ 192 SQL Injection in pic_id paramet ...
- activiti 5.22 表结构解析及清空流程运行测试数据
1.结构设计 1.1. 逻辑结构设计 Activiti使用到的表都是ACT_开头的. ACT_RE_*: 'RE'表示repository(存储),RepositoryService接口所操作的 ...