http://www.bianchengla.com/course/ds/practise/problem?id=1489

就是求一个大整数的阶乘

 1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 using namespace std; 5 #define N 210 6 #define M 1000 7 char str[N][M]; 8 int a[M],b[30],c[4*M]; 9 void ca()10 {11     int i;12     int k;13     str[0][0]='1';14     str[1][0]='1';15     for(i=2;i<=200;i++)16     {17         int len=strlen(str[i-1]);18         int j=0;19         for( k=len-1;k>=0;k--)20         a[j++]=str[i-1][k]-'0';21         int temp=i;22         int g=0;23         while(temp)24         {25             b[g++]=temp%10;26             temp/=10;27         }28         //int h=0;29         memset(c,0,sizeof(c));30         for(k=0;k<len;k++)31         {32             for(j=0;j<g;j++)33             {34                 c[j+k]+=(a[k]*b[j]);35                 if(c[j+k]>9)36                 {37                     c[j+k+1]+=(c[j+k]/10);38                     c[j+k]%=10;39                 }40             }41         }42         k=len*g;43         while(!c[k]) k--;44         int h=0;45         for(j=k;j>=0;j--)46         {47             str[i][h++]=(c[j]+'0');48         }49 50     }51 }52 int main()53 {54     memset(str,0,sizeof(str));55     memset(a,0,sizeof(a));56     memset(b,0,sizeof(b));57     memset(c,0,sizeof(c));58     ca();59     int n,i;60     while(cin>>n)61     {62         int len=strlen(str[n]);63         for(i=0;i<len;i++)64         cout<<str[n][i];65         cout<<endl;66     }67     return 0;68 }

转载于:https://www.cnblogs.com/fxh19911107/archive/2012/01/05/2313354.html

BUAA 1489相关推荐

  1. BUAA 436 孟竹的复习计划(二维树状数组)

    题目链接:http://acm.buaa.edu.cn/problem/436/ 题意:一个数列两种操作:(1)将某个位置的数字改成另一个数字:(2)交换两个位置的数字.每次操作之后输出逆序数的个数. ...

  2. BUAA(2021春)大作业—— 文本摘要生成(数组字典树+快排=0.087s)

    BUAA数据结构大作业-- 文本摘要生成 看前须知 题目内容 问题描述 输入形式 输出形式 样例 样例说明 题解 思考和详解 参考代码 看前须知 要点介绍和简要声明. 题目内容 问题描述 在自然语言文 ...

  3. [BUAA OO Unit 2 HW8] 第二单元总结

    文章目录 前言 第一次作业 架构 Producer-Consumer模型 调度策略 类图和时序图 锁和同步 复杂度分析 tips 二次询问 电梯反转 开门判断 HashMap遍历删除 些许优化 Bug ...

  4. BUAA OJ 722 Gzh之表达式求值

    BUAA OJ 722 Gzh之表达式求值 题目描述 时间限制: 1000 ms 内存限制: 65536 kb 如题,给你个数学表达式,求值. 输入 多组输入数据,每组数据为一行字符串(长度小于100 ...

  5. BUAA(2021春)查家谱(士谔书院16级期末)——找最近公共祖先(已上传测试数据和代码)

    BUAA数据结构期末模拟题--查家谱 看前须知 考试回顾 题目内容 问题描述 输入形式 输出形式 样例 样例说明 题解 思考和详解 参考代码 测试数据 看前须知 要点介绍和简要声明. 考试回顾 格式控 ...

  6. BUAA(2021春)实验:树的构造与遍历——根据提示循序渐进(可惜提示有问题Ծ‸Ծ)

    BUAA数据结构第五次编程题 --实验:树的构造与遍历 看前须知 第五次上机题汇总 实验目的与要求 实验内容 Huffman编码文件压缩 问题描述 实验准备 实验步骤 [步骤1] [步骤2] [步骤3 ...

  7. BUAA离散数学第十章 图论 最短路径及关键通路 python解法

    BUAA离散数学第十章 图论 最短路径及关键通路 python解法 前言 一.最短通路 题目描述 输入 输出 解题思路 代码 顶点 边 图 Solution 运行测试 二.关键通路 题目描述 输入 输 ...

  8. BUAA 439 孟竹屌丝玩儿游戏

    题目链接:http://acm.buaa.edu.cn/problem/439/ 题意:给出一个数列.求有多少个区间[L,R],使得区间之内的数字之和不大于K且区间内数字的抑或值不为0. 思路:首先计 ...

  9. 2022 buaa CO P6(Verilog实现流水线CPU(plus))

    2022 buaa CO P6 by psfott 设计概述 设计说明 支持指令: add, sub, and, or, slt, sltu, lui addi, andi, ori lb, lh, ...

  10. BUAA 计网实验笔记 3

    BUAA 计网实验笔记 3 -第三周网络层实验 这周实验还是挺繁琐的,尤其是VLAN间通信,重点理解一下.要不然你可能也像我一样,实验4小时 实验(1) ARP分析 ARP协议是用来建立mac地址和i ...

最新文章

  1. linux--nfs 网络文件共享
  2. intellij (org.jdom.input.JDOMParseException) Error on line 1: 前言中不允许有内容。
  3. 重载和const形参
  4. React之回调函数形式的ref
  5. SharePoint Manager 2007 国外高人写的管理工具,有特色,对学习moss有帮助
  6. vs2010 c# 配置项问题
  7. (转载)Hadoop常用SDK系列五 TotalOrderPartitioner
  8. C# IEnumerator与 IEnumerable(2) 托管使用
  9. 弹幕,是怎样练成的?
  10. 计算机科学的主要目标,学习计算机的主要目的是什么?
  11. 两台计算机怎么网络连接,两台电脑怎么连接局域网,详细教您两台电脑怎么连接局域网...
  12. 华为路由器时区以及时间配置
  13. 微信将可开小号!微信内测一个手机可注册俩号
  14. u盘工作表在计算机上打不开,U盘中无法打开的excel的解决办法
  15. 语料标注平台BRAT安装说明
  16. Markdown还能这么玩?这款开源神器绝了!
  17. 第五章 Spring Boot的数据库编程
  18. Chrono-Chrome下载管理插件
  19. Windows 7系统中的彩蛋“God Mode”
  20. 【luoguP5550】Chino的数列

热门文章

  1. Flutter 新版Navigator (一)
  2. 输入数据求熵值法matlab代码,熵值法matlab程序
  3. macOS High Sierra 10.13.6(17G65) IWith Clover 4596 and winPE含N显卡驱动
  4. 星巴克中国咖啡创新产业园正式动工,追加项目总投资至近11亿元
  5. java毕业设计招聘管理系统Mybatis+系统+数据库+调试部署
  6. java点赞判断恶意点击_重庆网络营销教你使用对恶意点击的必杀技!
  7. 分享一篇前端大佬关于前端职业规划的建议
  8. 13.罗马数字转整数
  9. 微信内置页实现自动拨号到页面的功能
  10. python编程自然数表达式_结对编程-python实现