1 条题解
-
0
#include <bits/stdc++.h> using namespace std; struct node { int a[511], len; node() { len=1; memset(a, 0, sizeof(a)); } }; node operator*(node n1, int x) { node no; no.len = n1.len; for(int i=1; i<=no.len; i++) no.a[i] = n1.a[i] * x; for(int i=1; i<=no.len; i++) { no.a[i+1] += no.a[i] / 10; no.a[i] %= 10; } int i = no.len; while(no.a[i+1] > 0) { i++; no.a[i+1] += no.a[i] / 10; no.a[i] %= 10; } while((no.a[i] == 0) && (i > 1)) i--; no.len = i; return no; } int main() { int n; scanf("%d", &n); node ans; ans.len = 1; ans.a[1] = 1; for(int i=1; i<=n; i++) { int x; scanf("%d", &x); ans = ans * x; } for(int i=ans.len; i>=1; i--) printf("%d", ans.a[i]); printf("\n"); return 0; }
- 1
信息
- ID
- 95
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 321
- 已通过
- 90
- 上传者