1 条题解
-
0
C :
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<ctype.h> #include<math.h> int a[10005],s[10005]; void ans(int k) { int i; for(i = 0;i<10000;i++){ a[i]=a[i]*2; } for(i = 0;i<10000;i++){ a[i+1] = a[i+1]+a[i]/10; a[i]=a[i]%10; } } int main() { int n; scanf("%d",&n); int i,j; a[0]=1; for(i=1;i<=n-1;i++){ ans(2); } int p; for(i=10005;i>=0;i--){ if(a[i]!=0){ p=i; break; } } for(i=p;i>=0;i--){ printf("%d",a[i]); } return 0; }
C++ :
#include <bits/stdc++.h> using namespace std; int main(){ int a[100] = {1},i,j,n,len = 1;//默认是1位的 cin>>n; //循环n次 for(i = 1;i < n;i++){ //共有len位需要计算 for(j = 0;j < len;j++){ a[j] = a[j] * 2; } //共有len位需要进位 for(j = 0;j < len;j++){ if(a[j] >= 10){ a[j + 1] = a[j + 1] + a[j] / 10; a[j] = a[j] % 10; } } //判断有没有多一位出来 if(a[len] != 0){ len++; } } for(i = len-1;i >= 0;i--){ cout<<a[i]; } }
Python :
print(2**(int(input())-1))
- 1
信息
- ID
- 2329
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者