题目1474:蓝桥杯基础练习VIP-阶乘计算

#include<iostream>

using namespace std;

int n;

int r=0;//判断进位

int t;//临时变量存储数字

int a[3000]={1};//将所有数位都置为1

int len=1;//设置开始时为一位数

int main(){

cin>>n;

for(int i=2;i<=n;i++){

for(int j=0;j<len;j++){

t=a[j]*i+r;

a[j]=(a[j]*i+r)%10;

r=t/10;

if(j==len-1&&r){//判断最高位是否有进位

len++;

}

}

}

for(int i=len-1;i>=0;i--){

cout<<a[i];

}

cout<<endl;

return 0;

}

相关推荐
Asa121385 分钟前
Nature Microbiology|跨微生物界菌株水平传播推断的新算法TRACS
算法
_君莫笑7 分钟前
Qt+Qml前后端分离上位机软件技术方案
c++·qt·用户界面·qml
叼烟扛炮18 分钟前
C++ 知识点22 函数模板
开发语言·c++·算法·函数模版
Tisfy22 分钟前
LeetCode 2553.分割数组中数字的数位:模拟(maybe+翻转)——java也O(1)
java·数学·算法·leetcode·题解·模拟·取模
平行侠26 分钟前
33水库抽样 - 从未知大小的流中等概率采样
数据结构·算法
吴声子夜歌34 分钟前
Java——Integer与二进制算法
java·算法
Controller-Inversion35 分钟前
42. 接雨水
数据结构·算法·leetcode
Controller-Inversion36 分钟前
33. 搜索旋转排序数组
数据结构·算法·leetcode
￰meteor43 分钟前
【移动语义与移动构造】
c++
陆水A1 小时前
运输时效预测模型:静态路由时效的计算与验证
大数据·人工智能·算法·spark·数据库开发·etl工程师