uva10375 选择与除法 唯一分解定理
来源:互联网 发布:centos 7.0安装教程 编辑:程序博客网 时间:2024/06/06 00:23
- 对数进行分解方便有效的约分。
- 唯一分解定理:一个数总是有素数的乘积构成。
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19601
#include<cstdio>#include<cstring>#include<cmath>#include<vector>#include<iostream>using namespace std;const int maxn = 10000;vector<int> primes;int e[maxn];// 乘以或除以n. d=1表示乘,d=-1表示除void add_integer(int n, int d) { for(int i = 0; i < primes.size(); i++) { while(n % primes[i] == 0) { n /= primes[i]; e[i] += d; } if(n == 1) break; // 提前终止循环,节约时间 }}void add_factorial(int n, int d) { for(int i = 1; i <= n; i++) add_integer(i, d);}bool is_prime(int n) { int m = sqrt(n); if(n==1 || n==0) return false; if(n%2==0 && n!=2) return false; for(int a = 2; a <= m; a++) if(n % a == 0) return false; return true;}int main() { for(int i = 2; i <= 10000; i++) if(is_prime(i)) primes.push_back(i); int p, q, r, s; while(cin >> p >> q >> r >> s) { memset(e, 0, sizeof(e)); add_factorial(p, 1); add_factorial(q, -1); add_factorial(p-q, -1); add_factorial(r, -1); add_factorial(s, 1); add_factorial(r-s, 1); double ans = 1; for(int i = 0; i < primes.size(); i++) ans *= pow(primes[i], e[i]); printf("%.5lf\n", ans); } return 0;}
1 0
- uva10375 选择与除法 唯一分解定理
- UVA10375唯一分解定理
- uva10375(唯一分解定理)
- UVA10375唯一分解定理运用
- UVa10375(唯一分解定理)
- uva10375(唯一分解定理)
- uva10375选择与除法
- UVA10375选择与除法
- uva10375 Choose and Divide(唯一分解定理)
- UVA10375 Choose and Divide (唯一分解定理)
- 筛法求素数,组合数公式,唯一分解定理(选择与除法,uva 10375)
- 例10-3 uva10375(唯一分解定理)
- Uva10375 Choose and divide(数论、唯一分解定理、快速幂)
- 紫书例题10-3 Uva10375 唯一分解定理
- 唯一分解定理 (Choose and Divide Uva10375)
- uva10375(唯一分解定理) Choose and divide
- uva10375 - Choose and divide(选择与除法)
- 例题10-3 选择与除法 UVa10375
- uva10570 外星人聚会 环状序列
- uva10562 Undraw-the-Trees 字符题处理 递归
- 传统线程互斥技术(传统的sychronized)
- [LeetCode]--295. Find Median from Data Stream
- [Xcode]打包错误 -ERROR ITMS 记录
- uva10375 选择与除法 唯一分解定理
- WebRTC学习笔记
- uva10304 Ordering-Tasks 拓扑排序
- 51Nod-1489-蜥蜴和地下室
- SparkMLlib---SGD随机梯度下降算法
- 用递归方式实现二叉树先序、中序、后序遍历
- Volley 的基本使用
- 文章标题
- Android Studio引用第三方jar包及开源library的方法