九度OJ 1076:N的阶乘 (数字特性、大数运算)

时间限制:3 秒

内存限制:128 兆

特殊判题:否

提交:6384

解决:2238

题目描述:

 输入一个正整数N,输出N的阶乘。

输入:

正整数N(0<=N<=1000)

输出:

 输入可能包括多组数据,对于每一组输入数据,输出N的阶乘

样例输入:
4
5
15
样例输出:
24
120
1307674368000
来源:
2006年清华大学计算机研究生机试真题

思路:

数很大,long long都表示不了,实际考察的是大整数乘法。

我写的代码可以实现,但应该有比较大的优化余地。


代码:

#include <stdio.h>int main(void)
{int n;int a[3001];int i, j;while (scanf("%d", &n) != EOF){for (j=0; j<3001; j++)a[j] = 0;a[0] = 1;for (i=1; i<=n; i++){for (j=0; j<3*i; j++)a[j] *= i;for (j=0; j<3*i; j++){if (a[j] >= 10){a[j+1] += a[j]/10;a[j] %= 10;}}}for (i=3*n; i>=0; i--){if (a[i] != 0)break;}//printf("%d\n\n", i);for (j=i; j>=0; j--)printf("%d", a[j]);printf("\n");}return 0;
}
/**************************************************************Problem: 1076User: liangrx06Language: CResult: AcceptedTime:2390 msMemory:912 kb
****************************************************************/


转载于:https://www.cnblogs.com/liangrx06/p/5083956.html

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

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

相关文章

Visual C++中 #include stdafx.h 头文件的用法

今天在做VC实验时&#xff0c;总是出现莫名其妙的错误。比如说&#xff1a; unexpected end of file whilelooking for precompiled header directive 再比如说这么一大串&#xff1a; mainframe.cpp 有错误\firstdlg.h(21) :error C2065: IDD_DIALOG_FIRST : undeclared ide…

mac显示无法连接adobe服务器,Mac安装Adobe软件,如遇Error提示解决方法

Mac10.15.3 安装Adobe Photoshop 2020的时候一直提示Error错误The installation cannot continue as the installer file may be damaged. Download the installer file again.看到这种问题&#xff0c;一般第一想法就是安装包损坏了&#xff0c;本能的会再下载一遍甚至多遍&am…

android开发中EditText自动获取焦点时隐藏hint的代码

只需让EditText设置以下的OnFocusChangeListener就可以了 private OnFocusChangeListener mOnFocusChangeListener new OnFocusChangeListener() {Overridepublic void onFocusChange(View v, boolean hasFocus){EditText textView (EditText)v;String hint;if (hasFocus) {h…

Grovvy初识

1.Groovy和Java对比 Groovy的松散的语法允许省略分号和修饰符除非另行指定&#xff0c;Grovvy的所有内容都为publicGrovvy允许定义简单脚本&#xff0c;同时无需定义正规的class对象Grovvy在普通的常用java对象上增加了一些独特的方法和快捷方式&#xff0c;使得他们更容易使用…

C和C++混合编程(__cplusplus使用)

第一种理解 比如说你用C开发了一个DLL库&#xff0c;为了能够让C语言也能够调用你的DLL输出(Export)的函数&#xff0c;你需要用extern "C"来强制编译器不要修改你的 函数名。 通常&#xff0c;在C语言的头文件中经常可以看到类似下面这种形式的代码&#xff1a; …

$.ajax 同步一不,ajax 同步不生效

可以用的生效代码注意 boolean 的位置var baseUrl ${pageContext.request.contextPath };function formcheck(){var flag false;var customerNameaa;var countryaa;var citybeijing;$.ajax({type: POST,url:baseUrl "/exports/credit/findBuyersBySerach",data:{&…

iOS工程中创建pch文件

1.新建pch类文件 2.在工程配置中,Build Setting 下搜索"pre"寻找Apple LLVM6.1 - Language下的 Preflx Header 3.点开Preflx Header 把左边pch类拖拽进去 4.把/"工程名"/....前边的内容全部换为$(SRCROOT) (具体替换内容看报错自己灵活运用)转载于:https:/…

批处理中setlocal enabledelayedexpansion的作用详细整理

设置本地为延迟扩展。其实也就是&#xff1a;延迟变量&#xff0c;全称延迟环境变量扩展, 想进阶&#xff0c;变量延迟是必过的一关&#xff01;所以这一部分希望你能认真看。 为了更好的说明问题&#xff0c;我们先引入一个例子。 例1: echo off set a4 set a5&echo…

一个服务器多个网站多个域名,多个域名一个服务器吗

多个域名一个服务器吗 内容精选换一换PAS(Primary Application Server)&#xff1a;主应用服务器。AAS(Additional Application Server)&#xff1a;扩展应用服务器。ASCS(ABAP Central Services)&#xff1a;SAP应用核心服务&#xff0c;是SAP应用的一个核心控件&#xff0c;包…

iframe 子父窗口互掉 js

一、父窗口调用iframe子窗口方法 1、HTML语法&#xff1a;<iframe name"myFrame" src"child.html"></iframe> 2、父窗口调用子窗口&#xff1a;myFrame.window.functionName(); 3、子窗品调用父窗口&#xff1a;parent.functionName(); 简单地…

yii2 ajax分页,Yii框架分页技术实例分析

本文实例讲述了Yii框架分页技术。分享给大家供大家参考&#xff0c;具体如下&#xff1a;直接上代码&#xff1a;1.首先写控制器层先引用pagination类use yii\data\Pagination;写自己的方法:function actionFenye(){$data Field::find(); //Field为model层,在控制器刚开始use了…

Spring源码解析——如何阅读源码

阅读目录 下面看一下如何使用jar包以及源码的source包  下面给出一个简单的spring样例  如何阅读源码最近没什么实质性的工作&#xff0c;正好有点时间&#xff0c;就想学学别人的代码。也看过一点源码&#xff0c;算是有了点阅读的经验&#xff0c;于是下定决心看下spring…

c++多线程编程

一直对多线程编程这一块很陌生&#xff0c;决定花一点时间整理一下。 os:ubuntu 10.04 c 1.最基础&#xff0c;进程同时创建5个线程&#xff0c;各自调用同一个函数 [html] view plaincopy #include <iostream> #include <pthread.h> //多线程相关操作头文件&am…

ajax当页post请求,tag落地页--通过ajax-post请求数据

查询所有tag及其对应跳转链接$tags get_tags(array(get>all));$output . ;if($tags) {foreach ($tags as $tag):$output . . $tag->name .;endforeach;} else {_e(No tags created., text-domain);}$output . ;echo $output;交互tag查询image场景如下&#xff0c;通过页…

GIT的PUSH指令

### GIT的PUSH指令 $ git push <远程主机名> <本地分支名>:<远程分支名> * git push命令用于将本地分支的更新&#xff0c;推送到远程主机。 * 如果省略远程分支名&#xff0c;则表示将本地分支推送到与之对应的远程分支&#xff08;通常两者同名&#xff…

Android 编程下 Touch 事件的分发和消费机制

Android 中与 Touch 事件相关的方法包括&#xff1a;dispatchTouchEvent(MotionEvent ev)、onInterceptTouchEvent(MotionEvent ev)、onTouchEvent(MotionEvent ev)&#xff1b;能够响应这些方法的控件包括&#xff1a;ViewGroup、View、Activity。方法与控件的对应关系如下表所…

ios微信本地视频上传到服务器,ios本地视频wx.uploadFile上传

//上传视频uploadVideo:function(){let _this this;let list [camera, album];wx.showActionSheet({itemList: [拍摄视频,从相册选择视频,从视频库选择视频],success: function (res) {if(res.tapIndex0 || res.tapIndex1){wx.chooseVideo({sourceType:[list[res.tapIndex]],…

如何手工抓取dump文件及分析

在生产环境下进行故障诊断时&#xff0c;为了不终止正在运行的服务或应用程序&#xff0c;有两种方式可以对正在运行的服务或应用程序的进程进行分析和调试。 首先一种比较直观简洁的方式就是用WinDbg等调试器直接attach到需要调试的进程&#xff0c;调试完毕之后再detach即可。…

Java 类加载机制详解

2019独角兽企业重金招聘Python工程师标准>>> 一、类加载器 类加载器&#xff08;ClassLoader&#xff09;&#xff0c;顾名思义&#xff0c;即加载类的东西。在我们使用一个类之前&#xff0c;JVM需要先将该类的字节码文件&#xff08;.class文件&#xff09;从磁盘…

JAVA vo pojo javabean dto区别

JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean&#xff0c;类必须是具体的和公共的&#xff0c;并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知&#xff0c;属性名称符合这种模式&#xff0c;其他Java 类可…