poj 2109 Power of Cryptography

Power of Cryptography
Time Limit: 1000MS   Memory Limit: 30000K
Total Submissions: 18408   Accepted: 9292
題目大意  給出兩個數n,k
要你求個數ans  ans^n=k
關於題目中的數據範圍完全可以用double完爆  沒必要用到二分+高精度
但是double類型雖然能表示10^(-307)   ~   10^308, (遠大於題意的1<=p<10101這個範圍),但只能精確前16位,因此必須慎用
那麼爲了避免double對輸入的數在運算過程中進行精確,那麼我們必須讓double的運算第一步就得到一個int(即小數點尾數全爲0)
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{
    double n,m;
    while(cin>>n>>m)
    cout<<pow(m,1/n)<<endl;
    return 0;
}

很短有木有。。。。。。。
發佈了107 篇原創文章 · 獲贊 4 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章