poj1001(大数据)
2014-08-11 15:12
316 查看
http://poj.org/problem?id=1001
这个问题是要请你求出 Rn 的精确值。在这里R是一个实数(0.0 < R <99.999), n 是一个整数(0 < n <= 25)。
Input
每组测试资料一列,包含了R,n,R的位置为第1行到第6行,n的位置为第8行到第9行。
Output
输出 Rn 的精确值。前后方无作用的0不应该出现。
Sample input
95.123 12
0.4321 20
5.1234 15
6.7592 9
98.999 10
1.0100 12
Sample Output
548815620517731830194541.899025343415715973535967221869852721
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
43992025569.928573701266488041146654993318703707511666295476720493953024
29448126.764121021618164430206909037173276672
90429072743629540498.107596019456651774561044010001
1.126825030131969720661201这个问题是要请你求出 Rn 的精确值。在这里R是一个实数(0.0 < R <99.999), n 是一个整数(0 < n <= 25)。
Input
每组测试资料一列,包含了R,n,R的位置为第1行到第6行,n的位置为第8行到第9行。
Output
输出 Rn 的精确值。前后方无作用的0不应该出现。
Sample input
95.123 12
0.4321 20
5.1234 15
6.7592 9
98.999 10
1.0100 12
Sample Output
548815620517731830194541.899025343415715973535967221869852721
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
43992025569.928573701266488041146654993318703707511666295476720493953024
29448126.764121021618164430206909037173276672
90429072743629540498.107596019456651774561044010001
1.126825030131969720661201
把小数相乘转换为整数相乘;最后确定小数点位置
这个问题是要请你求出 Rn 的精确值。在这里R是一个实数(0.0 < R <99.999), n 是一个整数(0 < n <= 25)。
Input
每组测试资料一列,包含了R,n,R的位置为第1行到第6行,n的位置为第8行到第9行。
Output
输出 Rn 的精确值。前后方无作用的0不应该出现。
Sample input
95.123 12
0.4321 20
5.1234 15
6.7592 9
98.999 10
1.0100 12
Sample Output
548815620517731830194541.899025343415715973535967221869852721
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
43992025569.928573701266488041146654993318703707511666295476720493953024
29448126.764121021618164430206909037173276672
90429072743629540498.107596019456651774561044010001
1.126825030131969720661201这个问题是要请你求出 Rn 的精确值。在这里R是一个实数(0.0 < R <99.999), n 是一个整数(0 < n <= 25)。
Input
每组测试资料一列,包含了R,n,R的位置为第1行到第6行,n的位置为第8行到第9行。
Output
输出 Rn 的精确值。前后方无作用的0不应该出现。
Sample input
95.123 12
0.4321 20
5.1234 15
6.7592 9
98.999 10
1.0100 12
Sample Output
548815620517731830194541.899025343415715973535967221869852721
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
43992025569.928573701266488041146654993318703707511666295476720493953024
29448126.764121021618164430206909037173276672
90429072743629540498.107596019456651774561044010001
1.126825030131969720661201
把小数相乘转换为整数相乘;最后确定小数点位置
#include <iostream> #include<cstring> #include<cstdlib> #include<string> #include<cstdio> #include<queue> #include<stack> #include<vector> #include<map> #include<list> #include<set> #define INF (1<<30) using namespace std; char aa[400]; int n; void cf(int cnt) { int la=strlen(aa)-1,cnt1=cnt; int a[400]= {0},b[400]= {0},c[400]= {0}; // while(aa[la]=='0'&&cnt>0) // { //// cout<<aa[la]<<cnt; // la--; // cnt--; // } // cout<<endl; cnt1=cnt; for(int i=la,j=0; i>=0; i--) { a[j]=b[j]=aa[i]-'0'; // cout<<a[j]; j++; } // cout<<endl; while(1) { if(n==1) break; n--; for(int i=0; i<190; i++) { for(int j=0; j<195; j++) { c[i+j]+=a[i]*b[j]; } } int t=0; for(int i=0; i<399; i++) { c[i]+=t; a[i]=c[i]%10; t=c[i]/10; c[i]=0; } cnt+=cnt1; } // for(int i=199;i>=0;i--) // printf("%d",a[i]); // cout<<endl; int i=399; while(a[i]==0&&i>=0) i--; int j=0; while(a[j]==0&&j<cnt) j++; if(cnt>i) { cout<<'.'; int t=cnt-i-1; while(t--) cout<<0; while(1) { if(i<0) break; printf("%d",a[i--]); if(i==j-1) break; } cout<<endl; } else { while(1) { if(i<0) break; if(i+1==cnt) cout<<'.'; cout<<a[i]; i--; if(i==j-1) break; } cout<<endl; } } int main() { while(scanf(" %s %d",aa,&n)!=EOF) { int cnt=0; double s=atof(aa); for(int i=0; aa[i]!='\0'; i++) { if(aa[i]=='.') { while(aa[i]!='\0') { aa[i]=aa[i+1]; cnt++; i++; } cnt--; break; } } // cout<<cnt<<endl; if(s==0) printf("0\n"); else if(n==0) printf("1\n"); else cf(cnt); } memset(aa,0,sizeof(aa)); return 0; }
相关文章推荐
- poj1001在测试他给的数据结果一模一样,但总是wrong answer
- hdoj1063&&poj1001 Exponentiation(大数据的处理,浮点数的幂高精确度表示)
- poj1001解题报告+测试数据
- poj 1001 大数模拟 +数据
- POJ 1001
- POJ 1001(浮点数高精度幂) 解题报告
- POJ 1001 大数的乘法
- POJ 1001 解题分析
- POJ 1001
- poj1001 学会使用BigDecimal:)
- poj1113 Wall 凸包问题 官方数据
- POJ 1001 Exponentiation
- POJ 1001 Exponentiation解题报告
- POJ 1661 SPFA过的。。。感谢各种牛贴出来的数据。。。
- POJ 2253 Prim算法及测试数据
- POJ 1001
- poj 1001 浮点数高精度求幂
- POJ 1001解题报告
- 【原】 POJ 1001 Exponentiation 大整数乘法 解题报告
- poj 1001