poj 1001
来源:互联网 发布:seo常用标签 编辑:程序博客网 时间:2024/06/05 00:22
没有做最后的整理了、、、、
#include "stdio.h"#include "string.h"struct Bignum{int s[3000]; //数组int len; //长度int point; //小数点位数Bignum(){len = 1;point = 0;memset(s, 0, sizeof(s));}Bignum operator = (const char* num){len = strlen(num);int flag = 0;int j;point = 0;for(int i=0,j=len-1; j>=0; j--){if(num[j] != '.'){s[i++] = num[j]-'0';if(flag==0){point++;}} else {flag = 1;}}if(flag){len--;}return *this;}Bignum operator * (const Bignum& b) const{Bignum c;c.point = point + b.point;int i,j;for(i=0; i<len; i++){for(j=0; j<b.len; j++){c.s[i+j] = c.s[i+j] + s[i]*b.s[j];}}int g;for(c.len=0,g=0; g!=0 || c.len<(len+b.len); c.len++){c.s[c.len] = c.s[c.len] + g;g = c.s[c.len]/10;c.s[c.len] = c.s[c.len]%10;}c.clear();return c;}void clear(){/*** 把数字前面和后面的0去掉*///printf("(1)len:%d\n(1)point:%d\n", len, point);int old_len=len, old_point=point, i;len = 0;//去掉小数点后面的零for(i=0; i<old_len && i<old_point; i++){if(s[i]!=0) {break;}point--;} //for ifor(; i<old_len; i++) {s[len++] = s[i];} //for//printf("len:%d\npoint:%d\n", len, point);//去掉整数前面零for(; len>0; len--){if(s[len-1]!=0){break;}} //for}void print(){clear();if(point>=len){printf(".");while(point>len) {printf("0");point--;}} //iffor(int i=len-1; i>=0; i--){printf("%d", s[i]);if(i==point && i!=0){printf(".");}} //forprintf("\n");}};int main(){freopen("D:\\in.txt", "r", stdin);char a[100];int b;while(scanf("%s%d", a, &b)==2) {//printf("b:%d\n", b);Bignum c,d;c = a;d = a;c.clear();d.clear();//d.print();for(int i=1; i<b; i++){d = d * c;}d.print();}return 0;}
思路:
1、把数字存储在数字数组中。
2、主要是在小数点的处理上。
- poj 1001
- poj 1001
- poj 1001
- POJ 1001
- POJ 1001
- poj 1001
- POJ 1001
- POJ 1001
- POJ 1001
- POJ-1001
- POJ 1001
- poj 1001
- POJ 1001
- POJ 1001
- POJ#1001
- poj-1001
- poj 1001
- POJ 1001
- 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔
- android.graphics包-核心渲染包(绘图)
- PHP支持组操作的Memcache类(域操作)
- 详解css中"点","井号","逗号","空格","冒号"的用法
- .net第三方插件Infragistics中的UltraWebTab控件,切换tab页的ontabclick事件的激活
- poj 1001
- The Product Manager's Handbook [Part 2]
- 配置和使用linux内核调试环境(基于虚拟机)
- Read and Write a /proc File
- POJ 3062 Celebrity jeopardy(我的水题之路——原样输出)
- jQuery中find和filter的区别
- 深度报道:双汇刘小兵谈信息化与低碳经济
- LHF Objective-C语法(4)对象初始化
- apache(单机)负载均衡配置(十)