51nod 1873 初中的算术

1873 初中的算术

基准时间限制:1 秒 空间限制:131072 KB

Noder现在上初三了,正在开始复习中考。他每天要计算型如 (a× a× a× ?× a)n个a 的式子。 其中 0.0<a<99.999,0<n<26 。

虽然Noder会计算,但是老是算错,现在他想要你来写一个程序输出正确的结果,以便他核对。

Input

单组测试数据。
第一行有一个实数a和一个整数n,中间用空格分开。 0.0 < a < 99.999,a总是占6位(a长度<=6),0<n<26。

Output

输出一个实数表示结果,不要输出前导0,后面多余的0也不要输出,如果是整数不要输出小数点。

Input示例

样例输入1
0.4321 20
样例输入2
1.0100 12

Output示例

样例输出1
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
样例输出2
1.126825030131969720661201

java拯救了我,BigDecimal大法好.
//package hello;
import static java.lang.Math.*;

import java.math.BigDecimal;
import java.util.*;
public class Main
{
    public static void main(String[] args)
    {
        int n;
        Scanner in=new Scanner(System.in);
        String s;
        s=new String(in.next());
        BigDecimal a=new BigDecimal(s);
        BigDecimal ans=new BigDecimal("1");
        n=in.nextInt();
        while(n!=0)
        {
            if(n%2==1)
                ans=ans.multiply(a);
            a=a.multiply(a);
            n=n/2;
        }
        s=ans.stripTrailingZeros().toPlainString();
        int i=0;
        if(s.charAt(0)==‘0‘&&s.charAt(1)==‘.‘)
            i=1;
        for(;i<s.length();i++)
        {
            System.out.print(s.charAt(i));
        }
    }
}
时间: 2024-11-07 23:50:46

51nod 1873 初中的算术的相关文章

51nod 1873 初中的算术【Java BigDecimal/高精度小数】

1873 初中的算术 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题  收藏  关注 Noder现在上初三了,正在开始复习中考.他每天要计算型如 (a× a× a× ?× a)n个a 的式子. 其中 0.0<a<99.999,0<n<26 . 虽然Noder会计算,但是老是算错,现在他想要你来写一个程序输出正确的结果,以便他核对. Input 单组测试数据. 第一行有一个实数a和一个整数n,

1873 初中的算术

Noder现在上初三了,正在开始复习中考.他每天要计算型如 (a× a× a× ?× a)n个a 的式子. 其中 0.0<a<99.999,0<n<26 . 虽然Noder会计算,但是老是算错,现在他想要你来写一个程序输出正确的结果,以便他核对. Input 单组测试数据. 第一行有一个实数a和一个整数n,中间用空格分开. 0.0 < a < 99.999,a总是占6位(a长度<=6),0<n<2

51nod 1189 算术基本定理/组合数学

www.51nod.com/onlineJudge/questionCode.html#!problemId=1189 1189 阶乘分数 题目来源: Spoj 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注 1/N! = 1/X + 1/Y(0<x<=y),给出N,求满足条件的整数解的数量.例如:N = 2,1/2 = 1/3 + 1/6,1/2 = 1/4 + 1/4.由于数量可能很大,输出Mod 10^9 + 7. Input 输入一个数N

MySQL数据库中的算术运算符

MySQL数据库中的算数运算符 MySQL数据库中的算术运算符 一.运算符的概述: 运算符在MySQL数据库中也是很重要的知识体,在执行sql语句的时候这个运算符对操作数据帮助很大.其中运算符的运用可以帮助你减省大量的时间,操作起来也比较灵活. 二.运算符 运算符主要包括"算数运算符"."比较运算符"."罗运算符"."位运算符"四大类,下面我们就一次学习一下. 1.算术运算符 算术运算符在sql语句的时候经常使用,例如对表的字

51nod 1201 整数划分(dp)

题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1201 题解:显然是一道dp,不妨设dp[i][j]表示数字i分成j个一共有几种分法. 那么转移方程式为: dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1] 表示将i - 1划分为j个数,然后j个数都+1 还是不重复,将i - 1划分为j - 1个数,然后j - 1个数都+1,再加上1这个数. 然后就是j的范围要知道1+2+

51nod 1138 连续整数的和(数学)

题目描述: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1138 给出一个正整数N,将N写为若干个连续数字和的形式(长度 >= 2).例如N = 15,可以写为1 + 2 + 3 + 4 + 5,也可以写为4 + 5 + 6,或7 + 8.如果不能写为若干个连续整数的和,则输出No Solution. Input 输入1个数N(3 <= N <= 10^9). OutPut 输出连续整数中的第1个数,如果有多

51nod 1463 找朋友(线段树+离线处理)

http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1463 题意: 思路: 好题! 先对所有查询进行离线处理,按照右区间排序,因为k一共最多只有10个,所有在该区间内的B数组,每次枚举K值,通过这样的方式来得到另外一个B值.但是这样得到的B值它在B数组中的位置必须在当前数的左边.如下图:(j为当前数在B数组中的位置,pos为计算得到的另一个B值在数组中的位置) 这两个数的和记录在pos中,这里pos的位置必须在j的左边,假

51nod 1437

http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1437 1437 迈克步 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注 有n只熊.他们站成一排队伍,从左到右依次1到n编号.第i只熊的高度是ai. 一组熊指的队伍中连续的一个子段.组的大小就是熊的数目.而组的力量就是这一组熊中最小的高度. 迈克想知道对于所有的组大小为x(1 ≤ x ≤ n

51nod 1272 思维/线段树

http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1272 1272 最大距离 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注 给出一个长度为N的整数数组A,对于每一个数组元素,如果他后面存在大于等于该元素的数,则这两个数可以组成一对.每个元素和自己也可以组成一对.例如:{5, 3, 6, 3, 4, 2},可以组成11对,如下(数字为下标):