【高精度】Vijos P1010 清帝之惑之乾隆
来源:互联网 发布:沪江英语网络课程如何 编辑:程序博客网 时间:2024/04/28 17:00
题目链接:
https://vijos.org/p/1010
题目大意:
多组数据,求R的n次幂(R为不超过9999.9的小数 n<=200)R保证占6位
不输出前导0和后缀0,整数就只输出整数部分
题目思路:
【高精度】
直接用double算是肯定不行的。毕竟精度要求那么高。
做法是先记下最终要输出的小数位数,然后把这个小数放大到6位,接下来算个高精度的幂之后处理一下输出就行了
////by coolxxx//#include<iostream>#include<algorithm>#include<string>#include<iomanip>#include<memory.h>#include<time.h>#include<stdio.h>#include<stdlib.h>#include<string.h>#include<stdbool.h>#include<math.h>#define min(a,b) ((a)<(b)?(a):(b))#define max(a,b) ((a)>(b)?(a):(b))#define abs(a) ((a)>0?(a):(-(a)))#define lowbit(a) (a&(-a))#define sqr(a) (a)*(a)#define swap(a,b) (a)^=(b),(b)^=(a),(a)^=(b)#define eps 1e-8#define MAX 0x7f7f7f7f#define J 10#define PI 3.1415926535897#define N 1504using namespace std;int n,m,lll,ans,cas;char s[10];int a[N];void gjdchengdjd(){int i;a[0]+=6;for(i=1;i<=a[0];i++)a[i]*=ans;for(i=1;i<=a[0];i++){a[i+1]+=a[i]/J;a[i]%=J;}while(a[a[0]+1])a[0]++;while(!a[a[0]])a[0]--;}int main(){#ifndef ONLINE_JUDGE// freopen("1.txt","r",stdin);// freopen("2.txt","w",stdout);#endifint i,j,k;while(~scanf("%s%d",s,&n)){memset(a,0,sizeof(a));ans=0;for(i=0;i<6;i++){if(s[i]!='.')ans=ans*10+s[i]-'0';else lll=5-i;}lll*=n;if(n==0){puts("1");continue;}a[0]=a[1]=1;for(i=1;i<=n;i++)gjdchengdjd();for(i=1;i<=lll;i++)if(a[i]==0)a[i]=-1;else break;if(a[0]>lll){for(i=a[0];i>lll && a[i]==0;i--);for(;i>lll;i--)printf("%d",a[i]);if(a[lll]!=-1){printf(".");for(i=lll;i && a[i]!=-1;i--)printf("%d",a[i]);}}else{printf(".");for(i=lll;i>a[0];i--)printf("0");for(i=a[0];i && a[i]!=-1;i--)printf("%d",a[i]);}puts("");}return 0;}/*////*/
0 0
- 【高精度】Vijos P1010 清帝之惑之乾隆
- 【vijos P1010】清帝之惑之乾隆 c++题解
- Vijos P1010 清帝之惑之乾隆
- vijos P1009 清帝之惑之康熙
- Vijos P1012 清帝之惑之雍正
- vijos P1009清帝之惑之康熙
- 【扩展欧几里德】Vijos P1009 清帝之惑之康熙
- 【动态规划】Vijos P1011 清帝之惑之顺治
- 【枚举】Vijos P1012 清帝之惑之雍正
- Vijos 1012 清帝之惑之雍正
- Vijos P1011 清帝之惑之顺治
- Vijos P1009 清帝之惑之康熙
- Vijos P1012 清帝之惑之雍正
- VIJOS-P1011 清帝之惑之顺治 dfs
- vijos之清帝之惑四题
- vijos 1011 清帝之惑之顺治 (记忆化搜索)
- VIJOS-P1011清帝之惑之顺治<滑雪> 【区间DP--相邻位】
- 乾隆的“十常四勿”之道
- CCS5.4+Proteus8的F28027实践课十二、SCI
- awk模式开关中多条件判断
- 中文分词--最少单词数
- 让两个Div并排显示的方法
- Java中数组的定义,一般使用方法,以及在js中的使用笔记
- 【高精度】Vijos P1010 清帝之惑之乾隆
- 【动态规划】Vijos P1011 清帝之惑之顺治
- 【枚举】Vijos P1012 清帝之惑之雍正
- 【模拟】Vijos P1062 迎春舞会之交谊舞
- [noip2005pj] 校门外的树
- 【递归】Vijos P1132 求二叉树的先序序列(NOIP2001普及组第三题)
- 中文分词——正向最大匹配法
- 【递归】Vijos P1114 FBI树(NOIP2004普及组第三题)
- 【最短路】Vijos P1046 观光旅游