首页 > 试题广场 >

2的N次方

[编程题]2的N次方
  • 热度指数:4544 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 128M,其他语言256M
  • 算法知识视频讲解
对于一个整数N(512 <= N <= 1024),计算2的N次方并在屏幕显示十进制结果。

输入描述:
输入一个整数N(512 <= N <= 1024)


输出描述:
2的N次方的十进制结果
示例1

输入

512

输出

13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096

Python3 一行

print(2 ** int(input()))

Golang解法:

使用math/big库

package main
import (
    "fmt"
    "math/big"
)
func main() {
    var (
        input int64
        i     *big.Int
        n     *big.Int
    )
    i = big.NewInt(2)
    fmt.Scan(&input)
    n = big.NewInt(input)  // 将输入的int64格式整数转为bigint类型
    i.Exp(i, n, nil) // 计算i的n次幂
    fmt.Println(i)
}
编辑于 2019-02-23 09:14:33 回复(0)

一句完成
print(2**int(input()))

发表于 2018-09-17 16:36:16 回复(0)
while True:
    try:
          N = int(input('输入一个整数:' ))
          if 512 <= N <= 1024:
                print(int(2**N))
          else:
                 print('INPUT ERROR')
    except:
             break
第一次刷题, 刷的第一道题, 尴尬, 感觉是对的,在自己电脑上运行了,输入整数,出来的结果和他说的一致呀, 不知道为什么,求大神帮忙指点!
发表于 2018-09-12 19:16:37 回复(2)
N = int(input()) print(2**N)

编辑于 2018-09-12 16:34:48 回复(1)