poj 2109 Power of Cryptography
2016-07-25 21:17
369 查看
题目链接:点击打开链接
Description
Current work in cryptography involves (among other things) large prime numbers and computing powers of numbers among these primes. Work in this area has resulted in the practical use of results from number theory and other branches of mathematics once considered
to be only of theoretical interest.
This problem involves the efficient computation of integer roots of numbers.
Given an integer n>=1 and an integer p>= 1 you have to write a program that determines the n th positive root of p. In this problem, given such integers n and p, p will always be of the form k to the nth. power, for an integer k (this integer is
what your program must find).
Input
The input consists of a sequence of integer pairs n and p with each integer on a line by itself. For all such pairs 1<=n<= 200, 1<=p<10101 and there exists an integer k, 1<=k<=109 such that kn = p.
Output
For each integer pair n and p the value k should be printed, i.e., the number k such that k n =p.
Sample Input
Sample Output
Description
Current work in cryptography involves (among other things) large prime numbers and computing powers of numbers among these primes. Work in this area has resulted in the practical use of results from number theory and other branches of mathematics once considered
to be only of theoretical interest.
This problem involves the efficient computation of integer roots of numbers.
Given an integer n>=1 and an integer p>= 1 you have to write a program that determines the n th positive root of p. In this problem, given such integers n and p, p will always be of the form k to the nth. power, for an integer k (this integer is
what your program must find).
Input
The input consists of a sequence of integer pairs n and p with each integer on a line by itself. For all such pairs 1<=n<= 200, 1<=p<10101 and there exists an integer k, 1<=k<=109 such that kn = p.
Output
For each integer pair n and p the value k should be printed, i.e., the number k such that k n =p.
Sample Input
2 16 3 27 7 4357186184021382204544
Sample Output
4 3 1234
用double 就可以了,提交时用c++,而不是g++,
用double时c++和g++的区别:输出时 c++ printf("%f"); g++ printf("%lf");
#include <iostream> #include<cstring> #include<cstdio> #include<cmath> using namespace std; int main() { double n,p; while(~scanf("%lf %lf",&n,&p)) { printf("%.0f\n",pow(p,1/n)); } return 0; }
相关文章推荐
- caffe|deep learning framework
- SDKD 2016 Summer Single Contest #13 .C
- linux 命令 tar
- [Toddler's Bottle]-[leg]
- CodeForces 630C
- 理解二叉查找树
- <JAVA学习笔记9>——网络之Socket的简单介绍
- 【HDU 1422】重温世界杯(DP)
- 【转】Intent传递数据时,可以传递哪些类型数据?
- spring3多数据源时事务@Transactional注解的qualifier
- 商人的诀窍
- 二叉树的建立与遍历
- AsyncTask的用法
- hdu 3842 Machine Works
- EditText显示表情
- caffe中的layers
- HDU-1686 Oulipo(kmp模板题)
- iOS架构模式浅析
- 从架构层面谈web加载优化(个人整理)
- 关于OOP中集合的理解