题目链接

题意:

多组数据输入也就是C++中的:

int n;
while (cin >> n)
{
代码块
}

对于每个数据输出其阶乘的各位上的数字之和。大眼一看,没有思路,那就百度把。

百度解法:

我们进行大表,队1到1000每个数的阶乘进行计算,然后存储到一个sum数组中去。眨眼一看,好像阶乘求不到1000啊!没有关系,我们用一个很长的数组进行存储,让后依次对每位进行进制转换,然后统计每位数的和。

    a[1][1] = 1;
sum[1] = 1;
for (int i = 2; i <= 1000; i++)
{
for (int j = 1; j <= 3000; j++)
{
a[i][j] = a[i - 1][j] * i;
} for (int j = 1; j <= 3000; j++)
{
if (a[i][j] > 9)
{
a[i][j + 1] += (a[i][j] / 10);
a[i][j] = a[i][j] % 10;
}
}
for (int j = 1; j <= 3000; j++)
{
sum[i] += a[i][j];
}
}

那么,这道题目也就到此为止了:

#include <bits/stdc++.h>
#define int long long
using namespace std; const int N = 10000;
int a[4000][N], sum[N]; signed main()
{
a[1][1] = 1;
sum[1] = 1;
for (int i = 2; i <= 1000; i++)
{
for (int j = 1; j <= 3000; j++)
{
a[i][j] = a[i - 1][j] * i;
} for (int j = 1; j <= 3000; j++)
{
if (a[i][j] > 9)
{
a[i][j + 1] += (a[i][j] / 10);
a[i][j] = a[i][j] % 10;
}
}
for (int j = 1; j <= 3000; j++)
{
sum[i] += a[i][j];
}
} int n;
while (cin >> n)
{
cout << sum[n] << endl;
} return 0;
}

I Love Big Numbers !(高精度)的更多相关文章

  1. LeetCode 第二题 Add Two Numbers 大整数加法 高精度加法 链表

    题意 You are given two non-empty linked lists representing two non-negative integers. The digits are s ...

  2. poj 2325 Persistent Numbers (贪心+高精度)

    把输入数字每次从9-2除,能整除则记录该数字,最后从小到大输出. 应该算是水题,不过窝第一次写高精度除法,虽然1A,不过中间改了好多次. /****************************** ...

  3. POJ 2325 Persistent Numbers#贪心+高精度除法

    (- ̄▽ ̄)-* 这道题涉及高精度除法,模板如下: ]; ];//存储进行高精度除法的数据 bool bignum_div(int x) { ,num=; ;s[i];i++) { num=num*+ ...

  4. 【贪心】【高精度】zoj3987 Numbers

    题意:给你一个数n,让你找m个非负整数,使得它们的和为n,并且按位或起来以后的值最小化.输出这个值. 从高位到低位枚举最终结果,假设当前是第i位,如果m*(2^i-1)<n的话,那么说明这一位如 ...

  5. POJ 1504 Adding Reversed Numbers (水题,高精度整数加法)

    题意:给两个整数,求这两个数的反向数的和的反向数,和的末尾若为0,反向后则舍去即可.即若1200,反向数为21.题目给出的数据的末尾不会出现0,但是他们的和的末尾可能会出现0. #include &l ...

  6. URAL 1012 K-based Numbers. Version 2(DP+高精度)

    题目链接 题意 :与1009一样,不过这个题的数据范围变大. 思路:因为数据范围变大,所以要用大数模拟,用java也行,大数模拟也没什么不过变成二维再做就行了呗.当然也可以先把所有的都进行打表,不过要 ...

  7. POJ 1625 Censored!(AC自动机+DP+高精度)

    Censored! Time Limit: 5000MS   Memory Limit: 10000K Total Submissions: 6956   Accepted: 1887 Descrip ...

  8. [poj3378] Crazy Thairs (DP + 树状数组维护 + 高精度)

    树状数组维护DP + 高精度 Description These days, Sempr is crazed on one problem named Crazy Thair. Given N (1 ...

  9. 数论 - 高精度Fibonacci数 --- UVa 10183 : How Many Fibs ?

    How many Fibs? Description Recall the definition of the Fibonacci numbers: f1 := 1 f2 := 2 fn := f n ...

  10. SGU-169 Numbers(找规律)

    题目链接:http://acm.sgu.ru/problem.php?contest=0&problem=169 解题报告: P(n)定义为n的所有位数的乘积,例如P(1243)=1*2*3* ...

随机推荐

  1. KingbaseES R6 集群备库网卡down测试案例

    数据库版本: test=# select version(); version ------------------------------------------------------------ ...

  2. KingbaseES R6 集群主机锁冲突导致的主备切换案例

    ​ 案例说明: 主库在业务高峰期间,客户执行建表等DDL操作,主库产生"AccessExclusiveLock "锁,导致大量的事务产生锁冲突,大量的会话堆积,客户端session ...

  3. docker_命令总结

    docker -v /hostDir:/containerDir /hostDir为宿主机的目录 /containerDir为容器内的目录 -v 实现两个目录的挂在,即容器内数据持久化到本机 dock ...

  4. Python实践项目——LSB隐写术

    此为北京理工大学某专业某学期某课程的某次作业 一.项目背景 1.隐写术 隐写术是一门关于信息隐藏的技巧与科学,所谓信息隐藏指的是不让除预期的接收者之外的任何人知晓信息的传递事件或者信息的内容. 2.L ...

  5. JAVA SE 基础总结

    § 基础知识 一.程序组织与运行原理 1.1 程序组织 一个 JAVA 程序文件中主要由如下几部分构成: package 声明 public 类:public 类与类文件名相同,因为其是作为该类文件唯 ...

  6. 在PyQt5中使用Pandas时的几个坑

    最近在看Python GUI编程,在用到PyQt5+Pandas时遇到一些问题.这里把问题和解决方法整理一下.备查. (好像不能上传附件,内容只好写在下面了.) 在PyQt5中使用Pandas时的几个 ...

  7. NLP新手入门指南|北大-TANGENT

    开源的学习资源:<NLP 新手入门指南>,项目作者为北京大学 TANGENT 实验室成员. 该指南主要提供了 NLP 学习入门引导.常见任务的开发实现.各大技术教程与文献的相关推荐等内容, ...

  8. .NET 反向代理 YARP 通过编码方式配置域名转发

    前面介绍了 YARP 通过配置文件的方式配置代理转发(传送门),而众所周知,微软的一贯作风就是能通过配置文件做的事情,通过编码的方式也能实现!YARP 也不例外,废话不多说,直接上代码! 首先,参照官 ...

  9. Kubernetes 日志:搭建 EFK 日志系统

    Kubernetes 中比较流行的日志收集解决方案是 Elasticsearch.Fluentd 和 Kibana(EFK)技术栈,也是官方现在比较推荐的一种方案. Elasticsearch 是一个 ...

  10. Elastic:Elastic Maps 基于位置的警报 - 7.10

    文章转载自:https://elasticstack.blog.csdn.net/article/details/112535618