Power of Cryptography
Power of Cryptography |
Background
Current work in cryptography involves (among other things) large primenumbers and computing powers of numbers modulo functions of theseprimes. Work in this area has resulted in the practical use of resultsfrom number theory and other branches of mathematics once considered tobe of only theoretical interest.
This problem involves the efficient computation of integer roots ofnumbers.
The Problem
Given an integer and an integer
you are to write aprogram that determines
, the positive
rootof p. In this problem, given such integers n and p, p willalways be of the form
for an integer k (this integer is whatyour program must find).
The Input
The input consists of a sequence of integer pairs n and p with eachinteger on a line by itself. For all such pairs ,
and there exists an integer k,
such that
.
The Output
For each integer pair n and p the value should be printed,i.e., the number k such that
.
Sample Input
2 16 3 27 7 4357186184021382204544
Sample Output
4 3 1234 一开始见到题目以为要用大数做... 结果用Double型数据就过了... AC代码如下:#include<stdio.h> #include<math.h> int main() { double n, p; while(scanf("%lf%lf", &n, &p) != EOF) { printf("%.0lf\n", pow(p, 1.0/n)); } return 0; }