오늘(10일 일요일) 얼랭 스터디에서,
달룟님이 GCD(최대 공약수)를 구하는 문제를 내셨다.

얼랭 - 최대 공약수 문제
(달룟님의 발표자료에서 캡쳐했다.)

두번째 문제는 스터디 시간 안에 풀지 못 했다. 아샬님과 솔리드원님의 코드에서 힌트를 얻고 집에 돌아왔다가, 한밤중에 갑자기 다른방법의 아이디어가 떠올라서 두번째 문제를 풀기 시작..

한................참을 삽질 하다가 -_-;;; 드디어 풀어냈다!! 감동 ㅠ_ㅠ
gcdm()의 얼랭 코드는 달랑 두 줄인데.. 두 시간 걸렸다. -_-;;;;;
익숙치 않은 함수형 언어라서, 간단한 문제임에도 굉장히;; 힘들었다. ㅠㅠ
코드는 가려놓으니, 얼랭을 공부중이면 한번 풀어보시길..
또는, Lisp, Scheme, Haskell 등으로 풀어도 신기할 것 같다.

============<코드 : 여기부터 드래그>============
gcdm(L) -> lists:max( [D || D <- lists:seq(1, lists:max(L)), is_divisible(D, L)] ).
is_divisible(D, L) -> lists:all(fun(X) -> (X rem D) =:= 0 end, L).

===============<여기까지 드래그>===============

p.s. 달룟님의 발표자료는 이쪽(클릭)이다. 킹왕짱임.


« Previous : 1 : ... 159 : 160 : 161 : 162 : 163 : 164 : 165 : 166 : 167 : ... 279 : Next »