1172:求10000以内n的阶乘
#include<iostream> #include<vector> using namespace std; int main(){ int n,sam=0; cin>>n; vector<int> a; a.push_back(1); for(int i=2;i<=n;i++){ for(int j=0;j<a.size()||sam;j++){ if(j>=a.size()){ a.push_back(0); } sam+=a[j]*i; a[j]=sam%10; sam/=10; } } for(int i=a.size()-1;i>=0;i--){ cout<<a[i]; } return 0; }