'분류 전체보기'에 해당되는 글 1035건

  1. 2013.07.08 시원한 팥빙수~
  2. 2013.06.22 탁스 웨딩
  3. 2013.06.22 100000! ( 100000 팩토리얼 ) & 1000000! ( 1000000 팩토리얼 )
  4. 2013.06.20 fibonacci 수열
  5. 2013.06.16 Hena
  6. 2013.06.16 Singapore river boat
  7. 2013.06.08 Big crab
  8. 2013.06.08 마카티 ( Makati )
  9. 2013.06.08 해운대 모래축제 ( 2013 )
  10. 2013.06.08 해운대 모래축제 ( 2013 )
My Life/version 20132013. 7. 8. 01:26


2013년 7월 7일 망고식스에서

'My Life > version 2013' 카테고리의 다른 글

초콜렛 선물  (0) 2013.08.01
탁스 웨딩  (0) 2013.06.22
휴식  (0) 2013.05.13
Posted by chobocho
My Life/version 20132013. 6. 22. 19:10



'My Life > version 2013' 카테고리의 다른 글

시원한 팥빙수~  (0) 2013.07.08
휴식  (0) 2013.05.13
Galaxy note 8.0 구매  (0) 2013.05.08
Posted by chobocho
Coding/Python 삽질기2013. 6. 22. 04:48

import sys

import time


def Factorial(N):

    checkSize = 5000

    endN = N / checkSize

    facResult = 1

    for fi in range(1, endN + 1):

        facResult = facResult * reduce(lambda x, y : x * y, range((fi-1)*checkSize+1,fi * checkSize+1))

    

    if ( (endN * checkSize + 1) != (N+1) ):    

        facResult = facResult * reduce(lambda x, y : x * y, range(endN * checkSize + 1, N+1))   

    return facResult



number = 100000

startTime = time.time()

factorialN = Factorial(number)


print "runtime is %s"%(time.time() - startTime) 

#print "Factorial %d is %d"%(number, factorialN)


인터넷을 검색 중 100000! 계산에 관한 글을 보고 실습해 본 코드.

2008년 구매한 노트북에서도 3.2초면 계산이 끝난다. ( * 결과 출력 할 때는 "젠틀맨" 뮤비 한 편 보고 나면 된다. )

math.factorial() 함수를 사용하는 것보다, 분할해서 계산하는게 3배 이상 빠르다.



* 참고 : 100000! 관련 KLDP 링크


http://kldp.org/node/129900

http://kldp.org/node/129379

http://kldp.org/node/129116

http://kldp.org/node/129044

http://kldp.org/node/107470



100000! 결과 : 100000.txt


심심해서 추가로 돌려본 1000000! ( 백만 팩토리얼 )

계산은 5분 만에 끝났으나, 출력이 한 시간도 넘게 걸린 듯...


1000000! 결과 : 1000000!.zip





'Coding > Python 삽질기' 카테고리의 다른 글

Cython 설치  (4) 2013.12.15
fibonacci 수열  (0) 2013.06.20
KMP algorithm  (0) 2013.05.06
Posted by chobocho
Coding/Python 삽질기2013. 6. 20. 01:06

tempResult = [0, 1, 1];


def fibonacci (number):

   if ( number == 1 or number == 2):

      return 1

   if ( tempResult[number] == -1 ): 

      result = fibonacci ( number-1 ) + fibonacci ( number-2 )

      tempResult[number] = result

   

   return tempResult[number]

   

      

for idx in range(3,1001):

    tempResult.insert(idx, -1)   

      

for idx in range(1,1001):

    print idx," : ",fibonacci(idx)


위와 같이 사용하면, 재귀일지라도 매우 빠른 속도로 1부터 1000까지의 피보나치 수열의 값을 구할 수 있다.

더 빠르게 계산하는 방법은 아래와 같다.  


def fibonacci2 (number):

   if ( number == 1 or number == 2):

      return 1

   

   previous =  1

   result   =  1

   sum      =  0

   

   for i in range(3, number+1):

       sum = result + previous

       previous = result

       result = sum

       print i," : ",result

       

   return result

 

fibonacci2(1000)    




1-1000까지 피보나치 수열의 값 : finbonacci_1000.txt


Posted by chobocho
Travel/2011 Inida2013. 6. 16. 20:36



'Travel > 2011 Inida' 카테고리의 다른 글

여행지 사진 - 인도  (0) 2012.08.07
달팽이  (0) 2012.01.16
Taj Mahal ( 타지마할 ) 사진모음 2  (0) 2011.08.25
Posted by chobocho
Travel/2012 Singapore2013. 6. 16. 12:53



'Travel > 2012 Singapore' 카테고리의 다른 글

주롱새 공원  (0) 2012.01.02
2012년 1월 1일 Singapore 불꽃쇼  (0) 2012.01.01
Posted by chobocho
Travel/Food2013. 6. 8. 20:32


[ Big crab ]


[ Crab fried rice ]


마닐라 그린벨트의 음식점에서 먹은 크랩요리

'Travel > Food' 카테고리의 다른 글

팥빙수~  (0) 2013.07.22
장어구이  (0) 2011.08.17
중국 여행 중 먹은 음식  (2) 2009.12.30
Posted by chobocho
Travel/2012 Philippines2013. 6. 8. 20:29



'Travel > 2012 Philippines' 카테고리의 다른 글

Green belt  (0) 2013.02.07
Snow village in Ocean park  (0) 2013.02.07
Oceanarium  (0) 2013.02.07
Posted by chobocho
Travel/Korea2013. 6. 8. 19:35





'Travel > Korea' 카테고리의 다른 글

해운대  (0) 2013.07.22
해운대 모래축제 ( 2013 )  (0) 2013.06.08
해운대 모래축제 ( 2013 )  (0) 2013.06.08
Posted by chobocho
Travel/Korea2013. 6. 8. 19:35



[ 서편제 ]


'Travel > Korea' 카테고리의 다른 글

해운대 모래축제 ( 2013 )  (0) 2013.06.08
해운대 모래축제 ( 2013 )  (0) 2013.06.08
해운대 모래축제 ( 2013 )  (0) 2013.06.08
Posted by chobocho