题目描述

输出N的阶乘。(注意时间限制150ms&&注意不能打表后输出,赛后我们会检查代码,如有发现,该位同学总分记0分处理)

打表的定义:在本地主机预先计算出了每个值对应的答案,并把输入和输出的映射直接写入所提交的代码。

输入

多组输入到文件结尾
每组输入一个整数n,(0<=n<=23)。

输出

每组测试数据输出一行,为n!。

样例输入
  1. 1
  2. 2
样例输出
  1. 1
  2. 2
  3.  
  4. 题解:有两种办法,一个是用c++的高精度来写,第二种是用long long int去存乘积,但是不要全部都存,
    把计算过程中所有的因子10提取出来(PS:sum只存去除后缀0的数),就是说例如如果遇到了5,就把sum除以2
    把标志末尾有多少个0的计数器++,最后吧sum输出,在循环输出全部的0
  1. #include <iostream>
  2. #include <algorithm>
  3. #include <cstring>
  4. #include <cstdio>
  5. #include <vector>
  6. #include <cstdlib>
  7. #include <iomanip>
  8. #include <cmath>
  9. #include <ctime>
  10. #include <map>
  11. #include <set>
  12. #include <queue>
  13. using namespace std;
  14. #define lowbit(x) (x&(-x))
  15. #define max(x,y) (x>y?x:y)
  16. #define min(x,y) (x<y?x:y)
  17. #define MAX 100000000000000000
  18. #define MOD 1000000007
  19. #define pi acos(-1.0)
  20. #define ei exp(1)
  21. #define PI 3.141592653589793238462
  22. #define INF 0x3f3f3f3f3f
  23. #define mem(a) (memset(a,0,sizeof(a)))
  24. typedef long long ll;
  25. ll gcd(ll a,ll b){
  26. return b?gcd(b,a%b):a;
  27. }
  28. const int N=1e6+;
  29. const int mod=1e9+;
  30. int main()
  31. {
  32. ll n;
  33. while(cin>>n){
  34. ll pre=;
  35. string s="";
  36. for(int i=;i<=n;i++){
  37. int x=i;
  38. while(x%==){
  39. if(x%==)
  40. x/=;
  41. else
  42. pre/=;
  43. x/=;
  44. s+='';
  45. }
  46. pre*=x;
  47. }
  48. cout<<pre<<s<<endl;
  49. }
  50. return ;
  51. }

JustOj 2043: N!的更多相关文章

  1. HDU 2043 密码

    http://acm.hdu.edu.cn/showproblem.php?pid=2043 Problem Description 网上流传一句话:"常在网上飘啊,哪能不挨刀啊-" ...

  2. JZYZOJ 2043 多项式除法和取余 NTT 多项式

    http://172.20.6.3/Problem_Show.asp?id=2043 最开始用了FFT,交上去全tle和wa了(tle的比较多),测了一组数据发现求逆元的过程爆double了(毕竟系数 ...

  3. AC日记——猴子 cogs 2043

    2043. 猴子 ★★   输入文件:monkeya.in   输出文件:monkeya.out   简单对比时间限制:1 s   内存限制:256 MB [题目描述] 有n只猴子,第一只尾巴挂在树上 ...

  4. 致初学者(三): HDU 2033~ 2043题解

    下面继续给出HDU 2033~2043的AC程序,供大家参考.2033~2043这10道题就被归结为“ACM程序设计期末考试(2006/06/07) ”和“2005实验班短学期考试 ”. HDU 20 ...

  5. hdu 2043

    Ps:自己写了以后又去看了下苏哥的....改进版的....学到东西,直接套用了. 代码: #include "stdio.h"#include "string.h&quo ...

  6. Justoj 2388最短区间 贪心

    2388: 最短区间 Time Limit: 1 s      Memory Limit: 128 MB Submit My Status Problem Description 有M种不同颜色的气球 ...

  7. Justoj 2389: 拼接三角形 二分查找

    2389: 拼接三角形 时间限制: C/C++ 1 s      Java/Python 3 s      内存限制: 128 MB      答案正确: 7      提交: 21 提交 我的状态 ...

  8. HDU - 2043密码 水题

    密码 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submissi ...

  9. hdoj:2043

    #include <iostream> #include <string> using namespace std; bool judgeSize(string str) { ...

随机推荐

  1. 20171123初学demo爬去网页资料

    一.工具vs2015 +python3.5 import urllib.request import urllib.error import re def getcontent(url,page): ...

  2. 在字符编码格式选项里UTF-8(无BOM)

    BOM——Byte Order Mark,就是字节序标记 在UCS 编码中有一个叫做”ZERO WIDTH NO-BREAK SPACE“的字符,它的编码是FEFF.而FFFE在UCS中是不存在的字符 ...

  3. ftp工具类

    package com.ytd.zjdlbb.service.zjdlbb; import java.io.File;import java.io.FileInputStream;import jav ...

  4. 装系统w7、ubuntu、centos等系统(一)

    装w7系统准备 1.从老毛桃u盘启动盘制作工具_老毛桃u盘装系统_老毛桃pe_老毛桃官网下载装机版 2.一个正常使用的U盘,但容量大于4G,并且插入电脑保持连接 3.老毛桃装机版选择U盘启动-> ...

  5. spark on yarn任务提交缓慢解决

    1.为什么要让运行时Jar可以从yarn端访问spark2以后,原有lib目录下的大JAR包被分散成多个小JAR包,原来的spark-assembly-*.jar已经不存在 每一次我们运行的时候,如果 ...

  6. 截取字符串后几位用 length

  7. Xcode $(SRCROOT)和$(PROJECT_DIR)区别

    $(SRCROOT)代表的时项目根目录下 $(PROJECT_DIR)代表的是整个项目 PS:往项目添加文件时,例如.a等,要先show in finder ,复制到项目中,然后再拖到xcode项目中 ...

  8. EF There is already an open DataReader associated with this Command

    捕捉到 System.InvalidOperationException _HResult=-2146233079 _message=意外的连接状态.在使用包装提供程序时,请确保在已包装的 DbCon ...

  9. MYSQL 5.7修改密码,登录问题

    mysql5.7 关于密码问题 报错: ERROR 1862 (HY000): Your password has expired. To log in you must change it usin ...

  10. HDU 2842 Chinese Rings(常数矩阵)

    Chinese Rings 转载自:点这里 [题目链接]Chinese Rings [题目类型]常数矩阵 &题意: 一种中国环,解开第k个环需要先解开全部的前(k-2)个环,并留有第(k-1) ...