一行代表一个数 x 给你底数和指数

求x-1的唯一分解定理的底数和指数 从大到小输出

#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<vector>
#include<math.h> using namespace std;
#define MAXN 100010
double z[MAXN],x[MAXN];
bool pri[MAXN];
int p[MAXN];
int di[MAXN],zhi[MAXN]; int main()
{
memset(pri,,sizeof(pri)); for(int i=;i<=;i++)
{
if(!pri[i])
for(int j=i*i;j<=;j=j+i)
pri[j]=;
}
int ans=;
for(int i=;i<=;i++)
if(!pri[i])
p[ans++]=i; while(scanf("%lf",&z[])!=EOF)
{
if(z[]==)
break;
char s;
scanf("%lf%c",&x[],&s);
int cnt=;
int cnt1=;
memset(di,,sizeof(di));
memset(zhi,,sizeof(zhi)); if(s=='\n')
{
double a=pow(z[],x[]);
long long b=(long long) a;
b--; for(int i=;i<ans;i++)
{
if(b%p[i]==)
{
while(b%p[i]==)
{
b=b/p[i];
zhi[cnt1]++;
}
di[cnt1++]=p[i];
}
}
if(b>)
{
di[cnt1]=b;
zhi[cnt1++]=;
}
for(int i=cnt1-;i>;i--)
printf("%d %d ",di[i],zhi[i]);
printf("%d %d\n",di[],zhi[]);
}
else
{
double a=pow(z[],x[]);
while(scanf("%lf%lf%c",&z[cnt],&x[cnt],&s))
{
cnt++;
if(s=='\n')
break;
}
for(int i=;i<cnt;i++)
{
a*=pow(z[i],x[i]);
}
long long b=(long long) a;
b--;
for(int i=;i<ans;i++)
{
if(b%p[i]==)
{
while(b%p[i]==)
{
b=b/p[i];
zhi[cnt1]++;
}
di[cnt1++]=p[i];
}
}
if(b>)
{
di[cnt1]=b;
zhi[cnt1++]=;
}
for(int i=cnt1-;i>;i--)
printf("%d %d ",di[i],zhi[i]);
printf("%d %d\n",di[],zhi[]);
} }
return ;
}

唯一分解定理 poj 1365的更多相关文章

  1. POJ 1730 Perfect Pth Powers(唯一分解定理)

    http://poj.org/problem?id=1730 题意:给出一个n,a=b^p,求出最大p值. 思路: 首先利用唯一分解定理,把n写成若干个素数相乘的形势.接下来对于每个指数求最大公约数, ...

  2. POJ 1845-Sumdiv(快速幂取模+整数唯一分解定理+约数和公式+同余模公式)

    Sumdiv Time Limit:1000MS     Memory Limit:30000KB     64bit IO Format:%I64d & %I64u Submit Statu ...

  3. POJ - 1845 G - Sumdiv (唯一分解定理)

    Consider two natural numbers A and B. Let S be the sum of all natural divisors of A^B. Determine S m ...

  4. POJ 1845 Sumdiv (整数唯一分解定理)

    题目链接 Sumdiv Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 25841   Accepted: 6382 Desc ...

  5. UVA - 10375 Choose and divide[唯一分解定理]

    UVA - 10375 Choose and divide Choose and divide Time Limit: 1000MS   Memory Limit: 65536K Total Subm ...

  6. poj2773 —— 二分 + 容斥原理 + 唯一分解定理

    题目链接:http://poj.org/problem?id=2773 Happy 2006 Time Limit: 3000MS   Memory Limit: 65536K Total Submi ...

  7. NOIP2009Hankson 的趣味题[唯一分解定理|暴力]

    题目描述 Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现 在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲 ...

  8. uva10375 Choose and Divide(唯一分解定理)

    uva10375 Choose and Divide(唯一分解定理) 题意: 已知C(m,n)=m! / (n!*(m-n!)),输入整数p,q,r,s(p>=q,r>=s,p,q,r,s ...

  9. 1341 - Aladdin and the Flying Carpet ---light oj (唯一分解定理+素数筛选)

    http://lightoj.com/volume_showproblem.php?problem=1341 题目大意: 给你矩形的面积(矩形的边长都是正整数),让你求最小的边大于等于b的矩形的个数. ...

随机推荐

  1. POJ1651Multiplication Puzzle[区间DP]

    Multiplication Puzzle Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8737   Accepted:  ...

  2. 实例变量和静态变量(或类变量static)

    一个类通过使用运算符new可以创建多个不同的对象,这些对象将被分配不同的内存空间,准确的说法是:不同对象的实例变量将被分配不同的内存空间,如果类中有类变量,那么所有对象的这个类变量都被分配到同一处内存 ...

  3. 第一天接触Orchard

    第一天接触Orchard 为什么要研究Orchard 呢? 楼主是因为要研究下最新的ASP.NET技术, Orchard 用的人多,历史也比较久,算是老牌了 再就是中文资料比较多,Orchard 有中 ...

  4. 在JAVA中ArrayList如何保证线程安全

    [b]保证线程安全的三种方法:[/b]不要跨线程访问共享变量使共享变量是final类型的将共享变量的操作加上同步一开始就将类设计成线程安全的, 比在后期重新修复它,更容易.编写多线程程序, 首先保证它 ...

  5. qau-国庆七天乐——B

      B - Bull Math   Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Sub ...

  6. 作业——FoodTracker程序

    作业及学习地址:https://developer.apple.com/library/content/referencelibrary/GettingStarted/DevelopiOSAppsSw ...

  7. html5游戏-包围盒检测算法

    矩形包围盒算法:检测2个矩形是否重叠,在这样情况下要判断2个矩形是否碰撞只需要比较两个矩形顶点的坐标即可.假设矩形A用(x1,y1)表示左上角,(x2,y2)表示右下角,矩形B用(x3,y3)表示左上 ...

  8. 微信JSSDK配置文件说明

    微信JSSDK配置文件说明 1.官方配置 wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开, ...

  9. 设置root用户不保存终端历史记录到.bash_history

    在.bashrc的最后行追加 unset HISTFILE cat .bash_history 还能看到 unset HISTFILE 之前保留的命令unset HISTFILE 之后的命令不会保留, ...

  10. AAL模版 中英文对照

    来源:http://52brain.com/thread-17336-1-1.html Brodmann分区是一个根据细胞结构将大脑皮层划分为一系列解剖区域的系统.神经解剖学中所谓细胞结构(Cytoa ...