Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
173620 简晨希1314 高精度阶乘 C++ 无测评数据 0 0 MS 0 KB 639 2024-08-20 22:13:26

Tests(0/0):


#include<bits/stdc++.h> #define ll long long using namespace std; char a[1000007]; int main() { int n,str = 1; scanf("%d",&n); a[0] = 1; for(int i=2;i<=n;i++) { int carry = 0,up = 0; int j; for(j=0;j<str;j++) { up = carry % 10; carry/=10; carry += ((a[j])*i + up)/10; a[j] = ((a[j])*i + up)%10; } while(carry) a[j++] = carry%10,carry/=10; str = j; } int i = str; printf("%d!=",n); while(i) putchar(a[i-1]+'0'),i--; printf("\n"); return 0; }