N的阶乘(高精度)

目录

题目描述

输入格式

输出格式

样例输入

样例输出

思路

参考代码


题目描述

输入正整数n,输出n!

输入格式

一个正整数n,n \leq 3000

输出格式

输出n!

样例输入

3

样例输出

9

思路

主要就是高精度乘法的模版,第一层循环遍历1~n,第二层遍历整个a数组,然后就是计算阶乘,也是最为核心的一部分。

            a[j] = a[j] * i + c; // 按位计算乘积也就是模拟竖式计算
            c = a[j] / 10; // c变量代表进位,这里计算进位
            a[j] %= 10; // 每一位要减去进位,只留下一位数

参考代码

#include <bits/stdc++.h>
#define ll long long
using namespace std;

const int N = 3 * 1e3 + 5; 

int a[N] = {0};

int main()
{
    a[1] = 1;
    
    int n, c = 0;
    cin >> n;

    
    for (int i = 2; i <= n; i++)
    {
        for (int j = 1; j <= 3000; j++)
        {
            a[j] = a[j] * i + c;
            c = a[j] / 10;
            a[j] %= 10;
        }
    }
    
    int i = N - 1;
    
    while(a[i] == 0)
        i--;

    for(; i >= 1; i--)
        cout << a[i];

    return 0;
}

制作不易,点个关注+收藏+赞!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/653542.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

电脑中msvcp100.dll丢失了怎么办?总结7种靠谱的解决方法

msvcp100.dll 文件是 Microsoft Visual C 2010 Redistributable 的一部分&#xff0c;这是一个重要的动态链接库&#xff08;DLL&#xff09;文件&#xff0c;用于存储许多程序共同使用的代码和资源。它是执行 C 编写的应用程序所必需的&#xff0c;尤其是那些使用 Visual C 20…

太极图形学——渲染——光线追踪概念部分

程序动画和渲染 程序动画和渲染有一些类似的地方&#xff0c;都是找到合适的像素并填上颜色&#xff0c;但是要把一个图片渲染的好看是有一些规则来指导的 光线追踪包含哪些呢 果壳中的光线追踪器 实时条件下的光线追踪&#xff1a;需要进行光栅化的处理 离线条件下做cg的话…

一文了解知识中台:是什么、作用、如何搭建

在当今信息繁杂的时代&#xff0c;知识对于企业来说犹如宝藏般重要&#xff0c;而知识中台就是宝藏山的藏宝图。关于知识中台&#xff0c;你可能会感到好奇&#xff0c;它究竟是什么&#xff0c;有什么作用&#xff0c;又该如何搭建知识中台呢&#xff1f;接下来就让LookLook同…

假如有几十个请求,如何去控制高并发?

公司项目中做图片或文件批量下载&#xff0c;每次下载都是大批量的&#xff0c;那么假如我一次性下载几十个&#xff0c;如何去控制并发请求的&#xff1f; 让我想想&#xff0c;额~&#xff0c; 选中ID&#xff0c;循环请求&#xff1f;&#xff0c;八嘎&#xff01;肯定不是那…

虚拟机报错:VMX 进程已提前退出。VMware Workstation 无法连接到虚拟机。

解决报错&#xff1a;VMware Workstation 无法连接到虚拟机。请确保您有权运行该程序、访问该程序使用的所有目录以及访问所有临时文件目录。 VMX 进程已提前退出。 解决方案&#xff1a;右键桌面图标进入VMware Workstation Pro的属性设置&#xff0c;兼容性–勾选“以管理员…

Java解析并修改JSON:将isShow属性改为false

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 在Java中&#xff0c;可以使用各种库来处理JSON数据。其中&#xff0c;Jackson和Gson是两个非常流行且功能强大的库。在这篇文章中&#xff0c;将使用Jackson库来解析给定的JSON字符串&#xff0c;将其转换为Map对象…

大学运动康复试题及答案,分享几个实用搜题和学习工具 #其他#职场发展

大学生除了学习专业知识外&#xff0c;还应该关注和学习一些软技能&#xff0c;如沟通能力、团队合作和领导力等&#xff0c;以提升自己的综合素质。 1.滴墨书摘 这款软件相当于一个在线“摘抄本”&#xff0c;我们可以利用它来记录一些阅读时遇到的好句子或者是段落&#xf…

“揭秘:为什么羊驼Ollama成为计算机运行大型语言模型的最佳拍档?“

最近&#xff0c;AIM 评测了在计算机上本地运行大语言模型&#xff08;LLM&#xff09;的最佳工具&#xff0c;Ollama 脱颖而出&#xff0c;成为最高效的解决方案&#xff0c;提供了无与伦比的灵活性。Ollama 是 Jeffrey Morgan 开发的一款开源工具&#xff0c;它正在彻底改变爱…

【源码】2024心悦搜剧源码百万级网盘资源

1、一键转存他人链接&#xff1a;就是将别人的分享链接转为你自己的 2、转存心悦搜剧资源&#xff1a;就是将心悦搜剧平台上的所有资源都转成你自己的 3、每日自动更新&#xff1a;自动转存每天的资源并入库 前端uin-app&#xff0c;后端PHP&#xff0c;兼容微信小程序

vscode+docker搭建迷你开发环境。制作docker镜像,并通过vscode连接后进行开发

制作自己的docker镜像&#xff0c;将docker镜像作为服务器&#xff0c;接受vscode连接 目录 1. 制作开发环境镜像 1.1 选择基础镜像 1.2 编写dockerfile 1.3 构建镜像 2. 启动镜像 3. 添加用户 3.1 查看物理机上用户信息 3.2 登录到docker中 3.3 按照物理机的用户和组…

如何搭建雾锁王国多人联机服务器,搭建教程分享

雾锁王国&#xff08;Enshrouded&#xff09;是一款融合了生存、制作以及动作RPG战斗的游戏&#xff0c;2024年1月24日在Steam平台以抢先体验形式发售&#xff0c;支持中文。游戏背景设定在一个基于体素构筑的辽阔大陆上。玩家将在这个开放世界中自由选择前进的方向&#xff0c…

Linux-CentOS7-解决vim修改不了主机名称(无法打开并写入文件)

Linux-CentOS7-修改主机名称 修改之后使用强制保存退出也不行。 解决办法&#xff1a; 使用hostnamectl命令进行修改 查看系统主机名和信息&#xff1a; hostnamectl这条命令会显示当前系统的主机名、操作系统信息、内核版本、架构信息等相关信息。 修改系统主机名&#xff1…

力扣算法之1070. 产品销售分析 III

力扣传送门 题解 选出每个售出过的产品 第一年 销售的 产品 id、年份、数量 和 价格&#xff0c;很明显就是个排序问题 我的解 SELECT product_id,year as first_year,quantity,price FROM ( SELECT sale_id,RANK() OVER(PARTITION BY product_id ORDER BY [year] asc ) A…

软件测试人员如何规划自己的职业发展路线

在这个飞速发展的时代中&#xff0c;我们每个人都渴望在各自的领域里找到属于自己的一片天空&#xff0c;而对于那些致力于软件测试的朋友们而言&#xff0c;规划好自己的职业发展路线显得尤为重要。 一、明确目标 首先&#xff0c;我们需要确立一个明确的职业发展目标。对于软…

【Spring Cloud】API网关

目录 什么是API网关为什么需要API网关前言问题列表 API网关解决了什么问题常见的网关解决方案NginxLuaSpring Cloud Netflix ZuulSpringCloud Zuul的IO模型弊端 Spring Cloud Gateway 第二代网关——GatewayGateway的特征Spring Cloud Gateway的处理流程Spring Cloud Gateway的…

将 MAX30100 脉搏血氧仪与 Arduino 连接

在这个项目中&#xff0c;我们将MAX30100 脉搏血氧仪传感器与 Arduino 连接起来。MAX30100 传感器能够测量血氧和心率。我们可以使用任何显示器&#xff08;如162 LCD 显示器&#xff09;来查看SpO2和BPM的值。血氧浓度&#xff08;称为 SpO2&#xff09;以百分比为单位测量&am…

在今日头条上写文章:ChatGPT完整使用教程

了解如何充分运用ChatGPT进行创作 简介 在今日头条上发布文章变得越来越方便。本文旨在详细解析如何运用ChatGPT来创作文章&#xff0c;并提供全方位的使用指南及常见问题的答疑。 第一步&#xff1a;基础准备 确保你已注册今日头条账号。 登录ChatGPT并与你的今日头条账号进…

Python 应用开发:Streamlit 布局篇(容器布局)

st.columns 以并列方式插入容器。 插入若干并排排列的多元素容器&#xff0c;并返回一个容器对象列表。 要在返回的容器中添加元素&#xff0c;可以使用 with 符号&#xff08;首选&#xff09;或直接调用返回对象的方法。请参见下面的示例。 列只能放置在其他列的内部&…

想用Python做OCR?看看这篇文章

OCR是Optical Character Recognition的缩写&#xff0c;中文名为光学字符识别。它是一种通过计算机技术对图像或扫描文档中的文字进行识别和理解的过程。OCR技术可以将图像中的文字转换为可编辑、可搜索的文本&#xff0c;使得计算机能够理解和处理这些文字信息。 OCR技术通常…

【技术实操】银河高级服务器操作系统实例分享,达梦数据库服务器 oom 问题分析

1. 服务器环境以及配置 【 机型】 处理器&#xff1a; HUAWEIKunpeng 920 5220 内存&#xff1a; 400518528 kB 主板型号&#xff1a; Chaoqiang K620 series 整机类型/架构&#xff1a; ARM BIOS 版本&#xff1a; KL4.41.028.TF.220224.R 固件版本&#xff1a; KL4.41…