poj1365 整数分解(质因数分解)
来源:互联网 发布:windows xp 自动登录 编辑:程序博客网 时间:2024/05/17 02:45
题意:给出一个数x的质因数表达式,请你算出x-1的质因数表达式
分析:
首先求出x,然后对x-1进行整数分解(质因数分解),整数分解可以直接套模板。
在处理过程中,发现用int定义x和y时,用pow函数运算时会造成数据丢失,因此用double定义。
首先看质因数分解模板:
//摘自《挑战程序设计竞赛》p118map<int,int> prime_factor(int n){map<int,int> res;for (int i = 2; i*i <= n; ++i){while (n%i == 0){res[n]++;n /= i;}}if(n != 1) res[n] = 1;return res;}
然后是代码:
/*@Filename: code.cpp@Version: 1.0@Author: wyl6@Email: 17744454343@163.com*/#include <cstdio> #include <cstdlib> #include <iostream> #include <stack> #include <queue> #include <algorithm> #include <cstring> #include <string> #include <cmath> #include <vector> #include <bitset> #include <list> #include <sstream> #include <set> #include <map>#include <functional> using namespace std; #define INF 0x3f3f3f3f #define MAXN 1000 typedef long long ll; string s;double val,ans;double x,y;int times;void prime_factor(int n){//cout << n << endl;map<int,int> res;map<int,int> ::reverse_iterator j;for(int i = 2; i*i <= n; i++){while(n%i == 0){res[i]++;n /= i;}}if(n != 1) res[n] = 1;for (j = res.rbegin(); j != res.rend(); j++)cout << j->first << " " << j->second << " " ;cout << endl;}int main() { while(getline(cin,s)) { val = 0; times = 0; ans = 1; for (int i = 0; ; ++i) { if (s[i] == ' ' || s[i] == '\0'){ if(val == 0) return 0; if(times%2 == 0) x=val; else{ y = val; ans *= pow(x,y); //cout << ans << endl; } if(s[i] == '\0') break; val = 0; times++; } else{val = val*10 + s[i]-'0';//cout << val << endl; } } //cout << ans << endl; prime_factor((int)ans-1); } return 0; }
阅读全文
0 0
- poj1365 整数分解(质因数分解)
- POJ1365 Prime Land【质因数分解】【素数】【水题】
- 整数的质因数分解算法
- 分解质因数()
- poj1142(质因数分解)
- 分解质因数(递归)
- 分解质因数(2)
- 分解质因数(do)
- C++分解质因数(获取整数的所有素因子)
- POJ 2447 RSA(大整数分解质因数+逆元)
- 分解质因数
- 分解质因数
- 质因数分解
- 分解质因数
- 质因数分解
- 分解质因数
- 分解质因数
- 质因数分解
- 修改创建代码模版
- 通过Ajax上传文件
- 邮件《百度地图开放平台全面支持国测局坐标》
- 2D屏幕上的一些类型
- Linux搭建redis主从关系时候 主从数据复制失败
- poj1365 整数分解(质因数分解)
- UVa11300
- RecyclerView+OKhttp三大布局与网络请求数据
- windows 下mysql主从搭建 io 线程出现no
- Content Security Policy 介绍
- 3D数学与线性代数学习笔记之 ——深刻理解矩阵乘法
- 浅谈框架之SSM的配置
- EnhanceNet算法介绍
- SpringBoot开发时需要安装的插件