디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

Project Euler - Problem48

Rei@디씨갤로그로 이동합니다. 2009.08.29 00:58:15
조회 82 추천 0 댓글 2


Problem 48

18 July 2003

The series, 1^(1) + 2^(2) + 3^(3) + ... + 10^(10) = 10405071317.
Find the last ten digits of the series, 1^(1) + 2^(2) + 3^(3) + ... + 1000^(1000).



문제 48.

1의 1승 ~ 1000의 1000승 까지의 각 숫자의 총 합에서 마지막 10자리의 숫자를 구하라.

erlang code

%% Problem 48
%% 18 July 2003
%%
%% The series, 1^(1) + 2^(2) + 3^(3) + ... + 10^(10) = 10405071317.
%%
%% Find the last ten digits of the series, 1^(1) + 2^(2) + 3^(3) + ... + 1000^(1000).

-module( problem48 ).
-export( [calc/0] ).

% 값 계산하는 함수
calc() ->
      
% 1^1 ~ 1000^1000 까지의 수열을 구한다
        Li = [ square( X, X ) || X <- lists:seq( 1, 1000 ) ],
        Sum = lists:sum( Li ),

        % 파일에 쓴다. 문제랑은 별 상관 없지만..
        write_to_file( "result.txt", Sum ),

        % 숫자를 문자열로 바꿔주는 라이브러리 함수.
        StrSum = erlang:integer_to_list( Sum ),

        % 끝 10자리를 잘라낸다.
        cut_last( StrSum, 10 ).
        

% N의 M승
square( N, 1 ) ->
        N;
square( N, M ) ->
        N * square( N, M-1 ).


% 파일에 쓰기
write_to_file( FileName, N ) ->
        {ok, SDevice} = file:open( FileName, write ),
        io:write( SDevice, N ),
        file:close( SDevice ).

% 문자열(==리스트)의 마지막 Len자리의 항목을 끊어낸다.
cut_last( List, Len ) ->
        Rv = lists:reverse( List ),
        Sub = lists:sublist( Rv, 1, Len ),
        lists:reverse( Sub ).



그리고 계산결과.

1000368199144695177095375011227646795567793680622934654583760988100234910747716194381428659099527845945869942643191290894720342979906407679647259860434238468038326040809691037615370376237713648510063115732951461774246705584266865759601815843666442832284556880313114548151539190975398485496645576513465858582712336401166221956188173449531674102688908321764663020306699770408625340766091595022791379368098369306375602813856646358773751558775213460225796579846583334007349358624342339332981334571237888809283103348760261360175950815609179464026871005243652109980863552142014242903434068560936573231079342194031864413918101238151056509267393515760392842472501391594073463001521843811073767021711026307504695733467897821866906648469828346607412967395801797791683609834722432241952845352564681868240369569566192825555323558078061997527689983848863374786789331581565252059172614339424600986143259233167583371070362625554531852054166117148858229508581589614337594463277554380518380921301218836327102231407332201109740102580216469298331766920619646083790732807627360614428085171565006289728508688964226799647192582924058589530750674578385365561878559589685756225692348914746922810913915619834754117648358035814128670294158565669942087736286390942241547226015004471330630113072042704288905042142628193771918594574302202147201188486345913190833752307476966010547423928871063118783026036381319039052008252072057933666712918946233312793697094074224187872045970976444309242782187738320257490080824330074991698698239561125811127607863900355221737846690567707344074494145266662103839812840216303448476913957072355732716627098372245223046792919747259113157425824064858331415400943278213042954635053574045209984512221264241903550178416824551412548637590007779082539288247751653566899882749594405895102587985539527709493510049546445427265617478399107188238681771215904234119392247489751079085948055945098805617963722928469554263782217625160428008228845552540344494860195267115187092227766195753907211126646150140614744233974765273475619964311852858614167819668340124730487710162006793529985758820653677274379563313495454526632718723482339494825759821076401694316043456512117937935456463521463021197726694983558929132357576188594977516630734212863869456164205525536767311298137182511494649463663073759219213056823561667776093739425742883930712609962163464088038826569132032160692637206183085942987973684584276491784843115472077900401692595694119273553511025991265446039366288921743581333200083717105241171504606883543418862024047552177055263424469501298905901938158245938633694105024815166679813689156668341197713475094389904887126794468901893850475050011205225742455555625750560213230387910337983950333245020653238989115507013882956277763880795687210857196493893142656713105966275422144605988058939600603604226921401402096519294250488670297983396353279460453142375542267881989197481789780678955093763193658603690898474826976906544473978017455720367929981796023041785852626797271283465789498383642350667978127819110846700

얼랭의 우월한 정수 계산능력을 찬양합시다.

추천 비추천

0

고정닉 0

0

원본 첨부파일 1

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 연예인하면 더 인기 많을 것 같은 스포츠 스타는? 운영자 24/09/16 - -
192145 폰 노이만 일화 [5] 세브(211.117) 10.06.10 310 0
192144 아무래도 나는 미래예측 능력이 있는 듯 [2] 분당살람갤로그로 이동합니다. 10.06.10 142 0
192143 폭풍같은 밤을 보냈다. 켁큇갤로그로 이동합니다. 10.06.10 86 0
192142 고정닉 이시키들 이거 [3] 고추장불고기갤로그로 이동합니다. 10.06.10 93 0
192141 HTML parsing 보통 어떻게 해야하나요? [5] ㅁㅇㄹ(203.253) 10.06.10 151 0
192140 Sean횽이 오늘 회사에 안온다고? [5] 빕뱟뱟갤로그로 이동합니다. 10.06.10 152 0
192139 우왕.. 사무실에 생수 배달 온단다... [1] rntjr갤로그로 이동합니다. 10.06.10 155 0
192138 션횽이없는씨닙횽.jpg [5] 개쉛기갤로그로 이동합니다. 10.06.10 167 0
192137 커널프로그래머 횽들 질문좀 할게 [5] (210.217) 10.06.10 127 0
192136 프갤에 씬입이 리젠되면 [7] 그런데갤로그로 이동합니다. 10.06.10 159 0
192134 내가 씨발 스테이크 먹는건 좋다 그런데 [2] 개쉛기갤로그로 이동합니다. 10.06.10 138 0
192133 하이쮸 수령하러 간다능~ [1] algo(174.21) 10.06.10 103 0
192132 hey girl can i get yo number? [3] 천재플머(121.139) 10.06.10 110 0
192131 요즘 Q횽네 회사 네오플 많이 함듬? [10] 씬입사원갤로그로 이동합니다. 10.06.10 255 0
192130 새벽에 꾼 이상한 꿈... [3] 분당살람갤로그로 이동합니다. 10.06.10 112 0
192129 벌서 목요일아침이내.. [1] rntjr갤로그로 이동합니다. 10.06.10 83 0
192128 *주의* l(180.0) 10.06.10 69 0
192126 얼마전부터 계속 거슬리는 단어 [2] 천재플머(121.139) 10.06.10 119 0
192125 요즘 거슬리는 단어 [15] l(180.0) 10.06.10 207 0
192124 스테이크가 왜요?> [1] 개쉛기갤로그로 이동합니다. 10.06.10 113 0
192123 개쉛기 스테이크 [4] algo(174.21) 10.06.10 147 0
192122 asp Msxml2.serverXMLHTTP.4.0 왜 안될까요? [1] 형들(218.233) 10.06.10 298 0
192121 이틀연속 집에 못들어 갈듯 우왕!! 웨더갤로그로 이동합니다. 10.06.10 56 0
192120 여러분 트리컨트롤에 리프노드 추가말고 루트 추가는 어케하는건가여 mfc(220.149) 10.06.10 63 0
192119 이슬이 긔엽긔.. [2] ㅁㄴㅇㄹㅇㅇ(112.168) 10.06.10 100 0
192118 어떡하지. [6] algo (174.21) 10.06.10 99 0
192117 프로그래밍 대행해주실 분 찾습니다 [1] gnu(220.82) 10.06.10 219 0
192114 알고횽 조심하세요, 개쉛기가 노리고 있습니다 [3] ㅇㅇㅃ갤로그로 이동합니다. 10.06.10 108 0
192113 알고횽있긔?'ㅅ' [1] 개쉛기갤로그로 이동합니다. 10.06.10 44 0
192112 1학년 신입생이에요 ㅠㅠ 코딩질문이여 [3] 이이밐(180.224) 10.06.10 125 0
192111 취업정보는 대개 어떠케 얻는게 좋나요~? [1] 날개달린호랭갤로그로 이동합니다. 10.06.10 89 0
192110 초보들을 위해서 [1] 초급과정갤로그로 이동합니다. 10.06.10 140 0
192109 악녀 김선아.swf ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 숙신갤로그로 이동합니다. 10.06.10 129 0
192107 갑자기 나가서 맥주 마시고 왔긔 Rei@디씨갤로그로 이동합니다. 10.06.10 70 0
192106 감사합니다 [2] 철학자abc갤로그로 이동합니다. 10.06.10 56 0
192105 으허 철학자abc [2] ∫ 2t dt=t²+c갤로그로 이동합니다. 10.06.10 76 0
192103 삼성 놋북에 방금 노리터갤로그로 이동합니다. 10.06.10 43 0
192101 근데 프로그래머 직장분위기는 어때요? [6] LeeAdama갤로그로 이동합니다. 10.06.10 221 0
192099 왜 갑자기 맥주 이야기냐능 [6] 양희철갤로그로 이동합니다. 10.06.10 103 0
192096 기린 > 사포로 >>> 나머지 [4] 중달(211.176) 10.06.10 99 0
192095 형들 부탁할 있는데 [10] 1004(112.170) 10.06.10 95 0
192093 지금 맥주 이야기 하나요???? [1] zeroxy갤로그로 이동합니다. 10.06.10 78 0
192091 유두가 나오면 대꼴이냐? [4] ㅇㅇㅃ갤로그로 이동합니다. 10.06.10 183 0
192089 [파서구현] 아 드뎌 됩니다 ㅜㅜ [3] 성대아싸(121.137) 10.06.10 185 0
192087 삼성노트북 [3] 이모군(175.114) 10.06.10 102 0
192086 이 야밤에 정전을 깨우는 글.... 햏햏했갤로그로 이동합니다. 10.06.10 62 0
192085 블로그의 포스트는 무슨뜻일까요? [3] 포스팅(118.218) 10.06.10 239 0
192084 ㅎㅎㅎㅎ맥주는...red horse 죠... [1] 우주(112.156) 10.06.10 56 0
192083 하이트 맥스도 맛있다는! [2] prismatic갤로그로 이동합니다. 10.06.10 74 0
192079 면접은 [1] Rei@디씨갤로그로 이동합니다. 10.06.09 139 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2