N的阶乘(高精度)

news2024/9/24 3:26:03

目录

题目描述

输入格式

输出格式

样例输入

样例输出

思路

参考代码


题目描述

输入正整数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;
}

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Docker-镜像迁移的三种方式=>备份恢复公有仓库私有仓库

制作好的镜像要被别人使用&#xff0c;有三种方式&#xff1a; 1.先备份镜像&#xff0c;别人通过u盘或者其它方式拷贝后&#xff0c;再恢复镜像&#xff0c;这种方式比较麻烦 2.将制作的镜像上传到公共镜像仓库&#xff0c;被别人拉取后使用&#xff0c;但可能存在网络不通畅或…

Gitlab不允许使用ssh拉取代码的解决方案

一、起因 之前一直是用ssh进行代码拉取&#xff0c;后来公司搞网安行动&#xff0c;不允许ssh进行连接拉取代码了 因为我是用shell写了个小型的CI/CD,部署前端项目用于后端联调的&#xff0c;因此在自动部署时&#xff0c;不方便人机交互&#xff0c;所以需要自动填充账密。 …

Kibana创建ElasticSearch 用户角色

文章目录 1, ES 权限参考2, 某应用的管理员权限&#xff1a;可以open/close/delete/cat/read/write 索引3, 某应用的读写权限&#xff1a;可以cat/read/write 索引 &#xff08;不能删除索引或数据&#xff09;4, 某应用的只读权限 1, ES 权限参考 https://www.elastic.co/gui…

Android 14 - 绘制体系 - 概览

从Android 12开始&#xff0c;Android的绘制系统有结构性变化&#xff0c; 在绘制的生产消费者模式中&#xff0c;新增BLASTBufferQueue&#xff0c;客户端进程自行进行queue的生产和消费&#xff0c;随后通过Transation提交到SurfaceFlinger&#xff0c;如此可以使得各进程将缓…

排序算法——上

一、冒泡排序&#xff1a; 1、冒泡排序算法的思想 我们从左边开始把相邻的两个数两两做比较&#xff0c;当一个元素大于右侧与它相邻的元素时&#xff0c;交换它们之间位置&#xff1b;反之&#xff0c;它们之间的位置不发生变化。冒泡排序是一种稳定的排序算法。 2、代码实现…

智能单款计划助力品牌利润增长

零售品牌若要在激烈的市场竞争中胜出&#xff0c;季中单款的管理无疑是商品生命周期管理的核心环节之一。而单款计划的制定&#xff0c;首先依赖于对爆款、平销及滞销产品的敏锐洞察。一个利润现象不得不引起我们的关注&#xff1a;爆款产品的销售&#xff0c;往往成为拉动品牌…

「实用推荐」如何为桌面 移动跨平台应用选择UI框架/APP架构?

DevExpress .NET MAUI UI组件库提供了用于Android和iOS移动开发的高性能UI组件&#xff0c;该库包括数据网格、图表、日程、数据编辑器、CollectionView和选项卡组件。 获取DevExpress .NET MAUI最新正式版下载(Q技术交流&#xff1a;532598169&#xff09; “一次编写&#…

03 FreeRTOS 同步互斥与通信

1、同步与互斥 一句话理解同步与互斥&#xff1a;我等你用完厕所&#xff0c;我再用厕所。 什么叫同步&#xff1f;就是&#xff1a;哎哎哎&#xff0c;我正在用厕所&#xff0c;你等会。 什么叫互斥&#xff1f;就是&#xff1a;哎哎哎&#xff0c;我正在用厕所&#xff0c;你…

笔试强训week6

day1 Q1 难度⭐⭐ 小红的口罩_牛客小白月赛41 (nowcoder.com) 题目&#xff1a; 疫情来了&#xff0c;小红网购了 n 个口罩。 众所周知&#xff0c;戴口罩是很不舒服的。小红每个口罩戴一天的初始不舒适度为 ai​。 小红有时候会将口罩重复使用&#xff08;注&#xff1a;…

什么是死锁,如何解决?

一、问题解析 死锁是指两个或两个以上的进程&#xff08;或线程&#xff09;在执行过程中&#xff0c;由于竞争资源或者由于彼此通信而造成的一种阻塞的现象&#xff0c;若无外力作用&#xff0c;它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁&#xff0c;这些…

网上有哪些正规的兼职副业赚钱平台?分享10类正规的网上兼职赚钱平台,让你在家也能赚钱~

在如今的快节奏社会中&#xff0c;越来越多的人开始寻求兼职副业来增加收入。而随着互联网的普及&#xff0c;网上赚钱平台成为了许多人选择的方式之一。然而&#xff0c;面对众多的网上赚钱平台&#xff0c;我们要如何辨别哪些是正规可靠的呢&#xff1f;在本文中&#xff0c;…

解读:Mint Blockchain 最新路线图,释放 NFT 生态重磅发展计划

作者&#xff1a;Mint Ecosystem 关于 Mint Blockchain&#xff1a;Mint Blockchain 是一个以太坊原生 L2 网络&#xff0c;核心是发展 NFT 生态和产业&#xff0c;促进 NFT 领域的 Mass Adoption 产生。MintCore 团队致力于将 Mint Blockchain 打造成一个围绕服务 NFT 资产的…

6万转高速主轴电机哪个品牌好?

近年来&#xff0c;随着全球科技的迅猛发展&#xff0c;各个工业领域对高精密零件加工的需求日益旺盛&#xff0c;特别是在医疗、航天航空、通讯技术等领域&#xff0c;对工件的精密性要求达到了前所未有的高度。在这样的背景下&#xff0c;高转速&#xff0c;高精密的高速电主…

yolo 算法 易主

标题&#xff1a;YOLOv10: Real-Time End-to-End Object Detection 论文&#xff1a;https://arxiv.org/pdf/2405.14458ethttps%3A//arxiv.org/pdf/2405.14458.zhihu.com/?targethttps%3A//arxiv.org/pdf/2405.14458 源码&#xff1a;https://github.com/THU-MIG/yolov10 分析…

哈夫曼树,哈夫曼编码和线索二叉树

前言 在数据压缩中,如电脑中的压缩软件,哈夫曼编码应用比较广泛,因此被称作最优二叉树。下面时哈夫曼树的一些定义。 哈夫曼树 定义 代码 下面时哈夫曼树的初始化和创建: #include "stdio.h"#define MAXSIZE 5 typedef struct {int weigth;int parent, lchi…

SSRS中使用QRCoder生成二维码

步骤 1.下载QRCoder.dll 下载地址&#xff1a;https://download.csdn.net/download/wjl7126180/89369398 2.使用gacutil.exe安装QRCoder.dll到GAC(Global Assembly Cache) gacutil.exe是全局程序集缓存工具&#xff0c;需要安装.NET Framework才会存在&#xff0c;如果没有…

质量人,你还在等什么?快来六西格玛培训公司充电吧!——张驰咨询

在竞争激烈的商业环境中&#xff0c;质量成为了企业生存和发展的关键。而六西格玛&#xff0c;作为一种全球公认的质量管理方法论&#xff0c;正在成为越来越多企业追求品质革命的重要工具。而六西格玛培训公司&#xff0c;则成为了这场品质革命中&#xff0c;质量人不可或缺的…

SSH秘钥对简化github项目管理(外加Tortoise配置)

文章目录 使用SSH秘钥对简化github项目管理为什么要用密钥对&#xff1f;如何使用SSH方式克隆版本库呢&#xff1f;补充&#xff1a;使用TortoiseGit&#xff08;小乌龟&#xff09;快速访问github远程仓库&#xff01;结尾&#xff1a;喜欢的小伙伴可以点点关注赞哦 使用SSH秘…

四大策略,五大优势!麒麟信安云助力用户实现VMware替换无忧

2023 年 12 ⽉ 11 ⽇&#xff0c;VMware 正式官宣“所有 VMware by Broadcom 解决⽅案向订阅许可证的过渡&#xff0c;并停⽌销售永久许可证、永久产品的⽀持和订阅&#xff08;SnS&#xff09;续订以及混合购买计划/订阅购买计划积分&#xff08;HPP/SPP&#xff09;”。 202…

根据一棵树的前序遍历与中序遍历构造二叉树(C++)

文章目录 1. 题目描述2. 题目解析 题目来源&#xff1a; 力扣…根据一棵树的前序遍历与中序遍历构造二叉树 1. 题目描述 给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二…