唯一分解定理 poj 1365
一行代表一个数 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的更多相关文章
- POJ 1730 Perfect Pth Powers(唯一分解定理)
http://poj.org/problem?id=1730 题意:给出一个n,a=b^p,求出最大p值. 思路: 首先利用唯一分解定理,把n写成若干个素数相乘的形势.接下来对于每个指数求最大公约数, ...
- POJ 1845-Sumdiv(快速幂取模+整数唯一分解定理+约数和公式+同余模公式)
Sumdiv Time Limit:1000MS Memory Limit:30000KB 64bit IO Format:%I64d & %I64u Submit Statu ...
- 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 ...
- POJ 1845 Sumdiv (整数唯一分解定理)
题目链接 Sumdiv Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 25841 Accepted: 6382 Desc ...
- UVA - 10375 Choose and divide[唯一分解定理]
UVA - 10375 Choose and divide Choose and divide Time Limit: 1000MS Memory Limit: 65536K Total Subm ...
- poj2773 —— 二分 + 容斥原理 + 唯一分解定理
题目链接:http://poj.org/problem?id=2773 Happy 2006 Time Limit: 3000MS Memory Limit: 65536K Total Submi ...
- NOIP2009Hankson 的趣味题[唯一分解定理|暴力]
题目描述 Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现 在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲 ...
- 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 ...
- 1341 - Aladdin and the Flying Carpet ---light oj (唯一分解定理+素数筛选)
http://lightoj.com/volume_showproblem.php?problem=1341 题目大意: 给你矩形的面积(矩形的边长都是正整数),让你求最小的边大于等于b的矩形的个数. ...
随机推荐
- 多年前写的一个ASP.NET网站管理系统,到现在有些公司在用
多年前写的一个ASP.NET网站管理系统,到现在有些公司在用 今早上接到一个电话,自已多年前写的一个ASP.NET网站管理系统,一个公司在用,出了点问题, 第一点是惊奇,5,6年前的东东,手机号码换了 ...
- 用ccproxy + stunnel做个加密代理
https://www.stunnel.org/downloads.html ccproxy + stunnel做个加密http代理和socks5代理 目前国内用户无法访问某些国外网站,如http:/ ...
- [No00004D]深度思考好文:软件工程师的困境
昨天是我一同学结婚的好日子,同学们大家聊各自的工作,有个同学突然问了我一句:我们同学中好像做软件的不多?如果再细分,好像做网络相关的更少? 回想起当时为何读计算机信息管理的专业,是因为那时听说读电脑未 ...
- codevs[1300]文件排版
Description 写电子邮件是有趣的,但不幸的是经常写不好看,主要是因为所有的行不一样长,你的上司想要发排版精美的电子邮件,你的任务是为他编写一个电子邮件排版程序. 完成这个任务最简单的办法是在 ...
- 第三方登录 (faceBook )
1.iOS 第三方登录(Facebook,Twitter...)http://www.jianshu.com/p/f64d5ad2ef2a
- PAT 1009. 说反话 (20)
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区 ...
- sqlserver 通用分页存储过程
来源:http://www.jb51.net/article/19936.htm CREATE PROCEDURE commonPagination ), --要显示的列名,用逗号隔开 ), --要查 ...
- Linux wait函数详解
wait和waitpid出现的原因 SIGCHLD --当子进程退出的时候,内核会向父进程SIGCHLD信号,子进程的退出是个异步事件(子进程可以在父进程运行的任何时刻终止) --子进程退出时,内核将 ...
- 排序图解:js排序算法实现
之前写过js实现数组去重, 今天继续研究数组: 排序算法实现. 排序是数据结构主要内容,并不限于语言主要在于思想:大学曾经用C语言研究过一段时间的排序实现, 这段时间有空用JS再将排序知识点熟悉一遍. ...
- 从大公司做.NET 开发跳槽后来到小公司的做.NET移动端微信开发的个人感慨
从14年11月的实习到正式的工作的工作我在上一家公司工作一年多了.然而到16年5月20跳槽后自己已经好久都没有在写博客了,在加上回学校毕业答辩3天以及拿档案中途耽搁了几天的时间,跳槽后虽然每天都在不停 ...