1 solutions
-
0
C++ :
#include<iostream> using namespace std; int b,c,a[10000],i,j,pd; int main() { cin>>b;a[0]=1;pd=0;c=0; for (j=1;j<=b;j++) { for (i=0;i<=pd;i++) { a[i]=a[i]*j+c; c=a[i]/10; a[i]=a[i]%10; } if (c!=0) { pd++;a[pd]+=c; while (a[pd]>9) pd++,a[pd]+=a[pd-1]/10,a[pd-1]=a[pd-1]%10; } c=0; } for (j=pd;j>=0;j--) cout<<a[j]; //system("pause"); return 0; }
Pascal :
var s,ss:string; i,n:longint; procedure gjd(s1,s2:string); var a,b,c:array[1..256] of longint; ss,sss:string; la,lb,lc,i,j,t:longint; begin fillchar(a,sizeof(a),0); fillchar(b,sizeof(b),0); fillchar(c,sizeof(c),0); la:=length(s1); lb:=length(s2); for i:=1 to la do a[la-i+1]:=ord(s1[i])-ord('0'); for i:=1 to lb do b[lb-i+1]:=ord(s2[i])-ord('0'); for i:=1 to la do begin t:=0; for j:=1 to lb do begin c[i+j-1]:=c[i+j-1]+a[i]*b[j]+t; t:=c[i+j-1] div 10; c[i+j-1]:=c[i+j-1] mod 10; end; c[i+j]:=t; end; lc:=la+lb; while (c[lc]=0) and (lc>1) do dec(lc); ss:=''; sss:=''; for i:=lc downto 1 do begin str(c[i],ss); sss:=sss+ss; ss:=''; end; s:=sss; end; begin readln(n); s:='1'; for i:=2 to n do begin str(i,ss); gjd(s,ss); end; writeln(s); end.
Java :
import java.math.BigInteger; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner cin=new Scanner(System.in); int n=cin.nextInt(); BigInteger s=BigInteger.valueOf(1); for (int i=1;i<=n;i++) { s=s.multiply(BigInteger.valueOf(i)); } System.out.println(s); } }
Python :
# coding=utf-8 s=1 n=eval(input()) for i in range(1,n+1): s*=i print(s)
- 1
Information
- ID
- 596
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By