UVA - 748 Exponentiation
2016-07-21 19:13
381 查看
UVA - 748 Exponentiation
题目大意:给一个6个位的字符串 和一个数N 求该字符串所表示的数子 的 N次方解题思路:先忽略小数点直接读所有的数然后用高精乘的方法做就好了
/************************************************************************* > File Name: UVA-748.cpp > Author: Robin > Mail: 499549060@qq.com > Created Time: 2016年07月20日 星期三 09时14分12秒 ************************************************************************/ #include<iostream> #include<cstdio> #include<cmath> #include<algorithm> #include<cstring> using namespace std; int main() { int a[100000]; int a1[100000]; int a2[100000]; char c[10]; int N; int t; int tt = 0; while (scanf("%s%d", c, &N) != EOF) { tt = 0; memset(a, 0, sizeof(a)); memset(a1, 0, sizeof(a1)); memset(a2, 0, sizeof(a2)); for (int i = 5; i >= 0; i--) { if (c[i] == '.') { t = i; continue; } a[tt] = c[i] - '0'; a2[tt] = c[i] - '0'; tt++; } int f = tt; if( N > 1) { for (int i = 1; i < N; i++) { memset(a1, 0, sizeof(a1)); for (int j = 0; j < tt; j++) { int s = 0; for (int k = 0; k < f; k++) { s = a1[j+k] + a2[k]*a[j]; a1[j+k] = s%10; a1[k+j+1] += s/10; } } if (a1[tt+f-1] > 0) f = tt + f; else f = f + tt - 1; for (int j = 0; j < f; j++) { a2[j] = a1[j]; } } int flag = 0; for (int i = 0; i < f; i++) { if (a1[i]) { flag = i; break; } } for (int i = f - 1; i >= flag; i--) { if ( a1[f-1] == 0 && i == f - 1) { printf("."); continue; } printf("%d", a1[i]); if ( i == (6-t-1)*N) printf("."); } printf("\n"); } if ( N == 1) printf("%s\n", c); } }
相关文章推荐
- Android 自定义View-怎么绘制居中文本?
- 【java类与对象】Java中创建对象的5种方式
- restore archivelog 的用法
- UVA - 202 Repeating Decimals
- UVA - 10014 Simple calculations
- 1108. Finding Average (20)-PAT甲级真题
- 1104. Sum of Number Segments (20)-PAT甲级真题
- hdu 5735 Born Slippy 暴力
- 关于C变量作用域和生存期的常见问题
- UVA - 10970 Big Chocolate
- UVA - 10916 Factstone Benchmark
- Android更新UI的方式
- UVA - 10177 (2/3/4)-D Sqr/Rects/Cubes/Boxes?
- 2016.07.07【初中部 NOIP提高组 】模拟赛C
- Reconstruct Itinerary
- [Leetcode]153. Find Minimum in Rotated Sorted Array
- 1109. Group Photo (25)-PAT甲级真题
- Debug - AliCTF - 2016 - Reverse
- Android-sharedUserId数据权限
- PHP Reflection API是PHP5才有的新功能