博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pku1001 Exponentiation
阅读量:6933 次
发布时间:2019-06-27

本文共 2033 字,大约阅读时间需要 6 分钟。

一道纯的高精度题,就是靠基础代码了,1AC0ms无压力。

注意整数和小数的分界,还有0的时候。

View Code
1 program pku1001(input,output);  2 type  3    number = array[0..100] of integer;  4 var  5    power    : integer;  6    s,s1,s2  : ansistring;  7    x,answer : number;  8    n        : longint;  9 procedure init; 10 begin 11    readln(s); 12    s1:=copy(s,1,pos(' ',s)-1); 13    delete(s,1,pos(' ',s)); 14    val(s,power); 15    n:=length(s1)-pos('.',s1); 16    delete(s1,pos('.',s1),1); 17    n:=n*power; 18    while s1[1]='0' do 19       delete(s1,1,1); 20 end; {
init } 21 procedure change(); 22 var 23 i : longint; 24 begin 25 x[0]:=length(s1); 26 for i:=1 to length(s1) do 27 x[i]:=ord(s1[length(s1)+1-i])-48; 28 answer:=x; 29 end; {
change } 30 function multiply(x,y :number ):number; 31 var 32 i,j : longint; 33 begin 34 fillchar(multiply,sizeof(multiply),0); 35 multiply[0]:=x[0]+y[0]-1; 36 for i:=1 to x[0] do 37 for j:=1 to y[0] do 38 begin 39 inc(multiply[i+j-1],x[i]*y[j]); 40 inc(multiply[i+j],multiply[i+j-1] div 10); 41 multiply[i+j-1]:=multiply[i+j-1] mod 10; 42 end; 43 if multiply[multiply[0]+1]>0 then 44 inc(multiply[0]); 45 end; {
multiply } 46 procedure main; 47 var 48 i : longint; 49 begin 50 for i:=1 to power-1 do 51 answer:=multiply(answer,x); 52 s1:=''; 53 s2:=''; 54 for i:=answer[0] downto n+1 do 55 s1:=s1+chr(answer[i]+48); 56 for i:=n downto 1 do 57 s2:=s2+chr(answer[i]+48); 58 s:=s1+'.'+s2; 59 while s[1]='0' do 60 delete(s,1,1); 61 while s[length(s)]='0' do 62 delete(s,length(s),1); 63 if s[length(s)]='.' then 64 delete(s,length(s),1); 65 end; {
main } 66 procedure print; 67 begin 68 if s='' then 69 writeln(0) 70 else 71 writeln(s); 72 end; {
print } 73 begin 74 while not eof do 75 begin 76 init; 77 change; 78 main; 79 print; 80 end; 81 end.

转载于:https://www.cnblogs.com/neverforget/archive/2012/04/05/2433203.html

你可能感兴趣的文章
邮件服务器问题--邮件积压、传递延迟解决方法
查看>>
Maven2整合集成IntelliJ IDEA创建Web项目
查看>>
实战postfix邮件发送
查看>>
U盘如何量产成USB-CDROM
查看>>
shell批量增删改查百库百表(mysql)
查看>>
网路游侠:日志审计系统与SOC的区别
查看>>
无处不在的网络与中国IPv9
查看>>
hexo
查看>>
云场景实践研究第85期:墨迹天气
查看>>
一个SAP开发人员的2017总结
查看>>
7216:Minecraft
查看>>
上接稳扎稳打Silverlight(20) - 2.0通信之WebClient, 以字符串的形式上传/下载数据
查看>>
perl连接mysql的例子
查看>>
windows server 2008虚拟化技术一览
查看>>
webpack2 实践
查看>>
Linux系统日志介绍分析
查看>>
Linux下Tomcat的启动、关闭、杀死进程
查看>>
FTP服务器的防火墙通用设置规则
查看>>
简单记事本及目录树形图的Java实现
查看>>
android 在使用ViewAnimationUtils.createCircularReveal()无法兼容低版本的情况下,另行实现圆形scale动画...
查看>>