57 求N!
问题描述 :
给你一个整数N(0 ≤ N ≤ 10000),你的任务是计算并输出 N!
输入说明 :
输入多行,每行一个N。
输出说明 :
对于每个输入N,在一行中输出N!
行首与行尾为空格,两组输出之间无空行。
输入范例 :
2
1
100
输出范例 :
2
1
93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
思想:这题有时间复杂度要求。按位计算,然后累加进位,比如9*9,结果是81,那么先取余得1,放在个位,然后进位/10,得8,累加到十位。
#include <stdio.h> #include <stdlib.h> int main() { int num, i, j, k; while (scanf("%d", &num) != EOF) { int res[10000] = {0}; res[0] = 1; int cur, temp; int len = 1; if (num == 0 || num == 1) { printf("1\n"); } else if (num == 2) { printf("2\n"); } else { int flag; for (i = 2; i <= num; i++) { for (j = 0; j < len; j++) { temp = res[j] * i + flag; res[j] = temp % 10; flag = temp / 10; if (flag != 0 && j == len - 1) { len++; } } } for (i = len - 1; i >= 0; i--) { printf("%d", res[i]); } printf("\n"); } } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)