메뉴 건너뛰기

박영식 홈페이지

[codility] 비도 오고 더럽게 우울하다(4월 19일 글 복구)

lispro062015.05.15 11:20조회 수 3669댓글 0

    • 글자 크기

문제 풀이 환경을 제공하는 사이트로 codility를 알게되었다.


개구리가 우는 이유는 청개구리가 비오는 곳에 그들을 묻어서 라고 하던가?


첫번째 문제는 뛸 수 있는 거리(D)가 정해져 있고, 시작거리(X)에서 출발할 때, 몇 번(R) 되어야 종료거리(Y)를 넘을 수 있는가를 묻는다.


영어로 되어 있어서 잘 이해가 가지 않아, 역시 PHP 로 걍 해보다가 답을 보았다.


C언어로 된 답은 그리 간결하지 않다. 이를 PHP로 바꿔서 했더니, 정수가 안 나온다고 해서, 리턴 값을 보니, 2.5다.


C언어에는 타입이 정해져 있어서, 자동 반올림(? 올림일 가능성이 제기됨)되어 정수로 리턴해 줘서 문제가 없었던 듯.


암튼 PHP 로 고치면 아래와 같다.


function solution($X, $Y, $D) {

     $r=0;


        if($Y>$X)

        {   

            $r=($Y-$X)/$D;

            $r=floor($r);

            if(($X+($r*$D)) < $Y)

                $r++;

        }


        return intval(floor($r));

}


먼저 도달해야하는 곳(Y)이 시작점(X) 보다 뒤에 있는지 확인하고, 몇 번 뛰어야 하는지 계산한다.


예제 케이스를 넣어보면 첫번째 R은 2.5이다.

두번째 조건문은 85<80 이므로 거짓이어서 반올림 값만 적용되어 3이 나온다.


두번째 조건문이 왜 필요할까?

그건 첫번째 R에서 동일한 숫자가 나오면 ROAD를 벗어나는게 아닌, 걸치기(?) 때문이다.(글을 정리하면서 이해하게 되었다.)


그런 예라면, 시작 점(X)이 5라고 한 값을 보자.


첫번째 값은 2.666666 이고, 두번째 조건문이 80.0000001 이라 영향을 안 줄 듯.


윽... 이상하다. 두번째 조건문을 주석처리하고 테스트 케이스를 바꿔도 답이 맞는다.


그건 아니고, 테스트 케이스 값이 무엇이다만 리턴하는 듯.


그래서 처음에는 round인 줄 알았는데, 이러면 안 된다. 그래서 floor로 고쳤다.


제출 결과 어떤 테스트 케이스를 넣었는지는 모르겠지만, 통과했다.


나도 그 선을 넘고 싶다. 그런데, 세상은 올림과 반올림은 인정하지 않고, 버림아니면, 마이너스 밖에 없겠지.


https://codility.com/demo/results/demoTZD8DM-38J/


테스트 케이스의 답만 리턴할 것이 아니라, 가부 여부도 알려줘야 한다고 생각한다.


두번째 문제도 풀었다. 처음에는 바보 같이 존재하는 숫자를 순차대로 찾아서 배열에서 소거하려 했는데, 이게 아닌 연속되는 자연수의 합 원리를 이용하면 되는 거였다. 배열 총합을 빠진 숫자까지의 수열 합에서 빼면 누락된 수가 나온다.

https://codility.com/demo/results/demoNF4Q3B-A48/


3번 문제는 특정 부분을 잘랐을 때, 좌측부분의 합과 우측부분의 합의 차를 구하는 문제이다. 어려운 문제는 아닌데, 문제가 이해가 안 가서 이제야 적어놓는다.

lispro06 (비회원)
    • 글자 크기

댓글 달기

[후기] 그린카 차량 사고

[원문보기]

쏘카보다는 그린카의 혜택이나 편의성이 높아 자주 이용하였다.


그 날은 구미 사고, 지하철 사고가 있어 불안 불안 했는데, 초특카 할인이 있어 선택했다.


차량 반납을 위해 출바해야 하는데, 시간이 딱 맞을 것 같았다.


차량 흐름이 원할한 곳에서 속도를 높였는데, 역시 시간 단축은 되지 않아, 시내 진입 부분에서 좌회전을 위한 무리한 끼어들기가 필요했다.


사실 다음 교차로에서 해도 되는 건데, 길을 모르니 반드시 해야하는 것으로 판단되어 택시 앞으로 좌측에서 우측으로 차선을 변경하였다.


진행 차로의 앞 차가 속도를 줄여서 멈칫하여 브레이크를 밟는 순간 변경 차로의 택시가 속도를 줄이지 않아 좌측 후방에 접촉했다.


상대 차량은 우측 상부에 흠집이 많이 발생하여 사고 처리가 필요했다.


일단 차에서 내려 대략적인 연락처 교환을 하고, 차를 반납하였다.


사고 접수로 보험 처리를 하자고 하여, 신고하였다.


처음 예약할 때, 30만원, 70만원 선택이 있었는데, 사고 안 날 줄 알고 면책금 70만원 짜리고 했던 것이 후회되었다.


그러나 그동안의 수업료로 생각하고 사고 다음날 보험사 직원을 통해 합의 사항을 전달하였다.


3주 후(다른 사고 후기에도 그린카는 3주후에 청구서가 온다고 되어 있어 기다렸다.) 청구서가 왔다.


다행이 수리비 37만원에 휴차비 4~5만원 정도로 끝났다.


41만원에 심사대기에서 정회원으로 다시 상태가 변경되었다.


추가 청구분은 없다고 하니 자중하면서 운행을 준비해야겠다.


쉬는 동안 차량 운행을 했다면, 그 정도는 나왔을 것이다.(대여, 유류, 식사 등)


쉐어링카 차량 사고 후기 이며, 시내에서 20~30 KM 속도에서 차선 변경시 발생한 사고이다.


나눔카 이용하시는 분들 참고하시길.(사고 나면 견인은 부르지 말고, 신고하는 게 좋다는 의견임)


[관람] 서울캐릭터페어 2006

[원문보기]
음. 신문에서 서울캐릭터페어에 대해서 읽고, 코엑스도 가볼 겸 사전등록을 했다. 일요일에 가려고 했는데, 오늘도 별로 일이 없어서, 지하철을 탔다. 굉장히 먼 거리라서 잠을 자기로 했다. 음. 잘 잤다. 7호선의 시발역에서 승차하기 때문에 자리 잡는데는 문제가 없었다. 강남도서관에 잠깐 들렸다가, evt에 대한 책과 잡지(new type-상당히 재미있더군)를 읽고, 코엑스로 갔다. 생각보다 도서관에서 가까웠다. 편의점에서 간단히 식사(?)를 끝내고, 아셈타워를 지나갔다. 아직 안 찾아 봤는데, 대충 회의센터라고만 알고 있다. 코엑스 드디어 입성. 상당히 넓고 쾌적했다. 물론 사람이 많이 몰려서 분주하긴 했지만, 그 정도면 아주 잘 처리한 것이다. 캐릭터페어... 그런 이벤트 위주의 전시회는 "별마루"(천체관측)이후로 처음이었다. 인형옷을 입은 알바들이 꽤 있었고, 아주 친근한 캐릭터(뿌까, 마시마로, 마린블루스, 둘리, 장금이 등)가 많아서 상당한 흥미를 불러 일으켰다. 게다가 패션쇼와 콘서트(7공주 콘서트, 이거 생각보다 강했다.)가 있어서, 전혀 심심하지 않았고, 각 부스에서는 어린이를 대상으로 quiz 및 스티커 붙여주기등의 이벤트가 있어서 관심을 끌기에 충분했다. 행사 내용은 전체적으로 매우 좋았다. 물론 아무추어캐릭터팀의 쓸쓸한 부스들도 있었지만, 국내의 캐릭터산업의 발전 초기의 모습을 보여주는 것이라 생각하고 넘어갔다. PDP TV로 방영되는 여러 애니메이션과 광고는 자금을 많이 투자한 것 처럼 느껴졌다. 지속적은 지원이 필요할 것 같다. 2시가 넘어서 캐릭터옷을 입은 알바들과 커스텀플레이를 연상시키는 여성들의 옷을 보니 따라가지 않을 수가 없었다. 춤추고 뛰는 모습이 아주 만족스러웠다.(이상한 생각만 하지 않는다면..) 나오기 전에 PUCA캐릭터부스에서 사진촬영을 했다. 물론 만족스럽진 않았지만, 그래도 한장 찍었다. 푸훗... 내년에는 꼭 2명 이상으로 올 것이다. 아마도... 다시가도 질리지 않을 만큼 준비와 호응이 좋았다. 물론 지금은 다리가 많이 아프긴 하지만, 구경 잘 했다. * 박영식님에 의해서 게시물 복사되었습니다 (2007-06-09 01:29)"

[잡담] 코드가 30대에 맞춰지는 듯

[원문보기]
페이스북에 사진과 글을 올렸는데, 20대는 반응이 없고, 죄다 30대가 댓글을 달고, 좋아요를 눌렀다.

더 이상 젊은 층에게 감흥을 주지 못하는 감각이 되었는가?

이젠 그렇게 되어가나 보다.

그래도 별 수 없다. 난 30대가 되어가므로,

이번 생일에는 특별한 이벤트를 마련해야겠다.

마지막 20대 생일이므로

[dw] ui가 좀 바뀌었군...

[원문보기]
자주 들어가는 developerworks!
최근글이 나와서 이제 안 눌러 봐도 되겠군.

[수필] 책의 탄생 외

[원문보기]
음악은 세 번 태어난다
베토벤이 작곡을 했을 때 처음, 음악이 태어나고, 그 곡을 연주가가 연주했을 때, 음악은 두 번째로 태어나고, 마지막으로 스피커에서 소리가 재생되었을 때, 음악은 세 번째로 태어난다.

반도체는 세 번 태어난다.
반도체 개발과정은 크게 워킹다이(Working Die: WD, 동작샘플), 엔지니어 샘플(Engineer Sample: ES), 커스터머 샘플(CS: Customer Sample: 상용제품) 등 3단계로 구분된다.

책은 세 번 태어난다.
작가가 책을 저술했을 때, 책은 처음으로 태어난다. 서평가나 기자, 소개하는 이들에 의해 책은 두 번째로 태어난다. 독자(end user, the last reader)가 읽었을 때, 책은 세 번째로 태어난다.

난 책을 두 번째로 태어나가 하는 기자이다. 때로는 최종 독자가 되어 저자가 출산한 도서를 읽고 책에 대해 말한다. 모든 제품은 세 번 태어나는 것 같다. 생산자에 의해, 판매자에 의해, 소비자에 의해. 생산자가 의도한 대로 홍보되거나 쓰이지 않더라도 새로운 의미부여와 역할을 통해 쓰임을 받게된다.

인간도 마찬가지다. 부모님에 의해 태어나고, 사회에 의해 태어나고, 자신에 의해 태어난다. 마지막에 태어난 사람이 정말 자신의 인생을 살았다고 할 수 있겠다. 사람들이 사회에 의해서 태어난 채로 죽는다면 정말로 의미가 없는 인생일 것이다. 자신에 의해 다시 태어나길 바란다.



가로매점이란 말이 있다. 노점, 노점상보다 훨씬 순화된 좋은 말인 것 같다. 노동절, 노동자도 근로자의 날, 근로자로 바뀐 것처럼 이런 순화는 정말 환영할 만한 일이다. 'ㄴ' 보다는 'ㄱ'이 한글 자음의 앞에 나오는 이유는 이런 것과도 관계가 있지 않을까?

[잡담] 돈과 자신감은 비례한다

[원문보기]
지인들의 연봉 수준을 알고 나니, 도저히 참을 수가 없었다. 용인할 수 없는 수준의 금액 차이이다. 도저히 순간의 선택이라는 표현으로는 상황을 설명할 수 없다. 국내 중소기업은 회생할 수 없다. 대기업과의 큰 연봉 격차 때문에 인재가 빠져나갈 수 밖에 없다. 또한 남아있는 이들도 절대 의욕을 심어줄 없다. 국내에서 사용하는 중소기업 육성책은 아무리 정책을 세워도 권력자의 주머니로 돈이 다 들어간다. 진정으로 소규모 업체에서 근무할 마음을 가진 이들에게 돌아가지 않는다.
5월이라 각종 행사가 많아 잔액이 바닥을 드러냈다. 게다가 요즘 겪고 있는 상황들이 복합되니, 삶의 의미까지 퇴색되어 가고, 하고 싶은 일을 하는 일이 결코 행복하게 하지 않는다고 결론지어졌다. 아무리 발버둥쳐도 결코 사회 체제를 거스를 순 없다는 사실이 계속 씁슬하게 한다. 이젠 책도 빌려볼 만한 여유가 되지 않는다. 자신감을 바닥으로 떨어졌고, 업무 파견지도 지방으로 지방으로......
예비군 훈련을 받으며, 데이트 코스를 돌았다. 정말 돌아버리는 줄 알았다. 여유가 없어 이런 곳을 낮에 걷고 싶은 사람과 가지 못하고, 인적이 드문 밤에 예비군 훈련으로 거닐어야 한다니. 하늘에 떠있는 달이 무색했다.

[여행] 캐나다에 다녀오다.

[원문보기]

비행기를 가장 오래탄 건 인도네시아로의 왕복 하던 일정이었다. 그리고, 이번에 캐나다에 다녀오면서 비행기 환승까지 하는 경험을 하게 되었다. 길면 길었다고도 할 수 있는 여행이었는데, 역시 편한 여행은 없는 듯하다. 내가 무언가를 해야만 얻을 수 있는 것이다. 백인들의 나라를 처음 접하는 것으로서 굉장한 즐거움이 있었고, 그들의 따뜻함도 느낄 수 있는 대단한 추억이었다.

비가 많이와 여러모로 불편한게 많았지만, 나름 운치있는 풍경들을 만날 수 있었다. 멀지만, 돈이 많이 들지만, 서양권으로 가는게 훨씬 경험이 클 것으로 생각된다. 여태까지는 동양권에만 갔었다는 걸 알아채개 하는 시간이었다.

[헌혈] 100번 하면 명예의 전당에 등록할 수 있다

[원문보기]

올해 가장 기록할 만한 일은 헌혈 100회 달성이다.


비록 무료 라식수술 이벤트에 당첨되지는 못 했지만, 양적으로 헌혈 횟수를 채웠다.


후배의 동생은 조혈모 세포를 기증한다는데, 나는 서른이 넘어서 여기까지는 못할 듯 하다.


기부를 못하니 몸으로 때우자는 정신으로 피를 기부해 온 나는 장기까지 사후 기증한다고 했으니 할만큼 했다.


집에 있는 50원짜리 1개와 10원짜리 5개를 구세군 자선냄비 안에 넣으며 언제쯤 나도 1억원짜리 수표를 넣을 수 있을까 생각해 봤다.


아무래도 돈으로는 절대 기부할 수 없을 것 같고, 지적 노동이나(좋은 말로 재능기부) 몸을 던지는 것으로 대신해야할 것 같다.


헌혈 100번하면 뭔가 달라질 거라 생각했는데, 역시 달라지는 건 없다.

[독서] 어느덧 800권을 지나...

[원문보기]
가을이 되니 오히려 속도가 안 나오는 군.

내년에는 1000권을 가뿐이 넘기겠는 걸.

[홍보] 제 2 회 LISP 세미나

[원문보기]
메인 주제로만은 시간이 남을 것 같아서, LISP OS와 LISPHP, PHAREN 도 소개하기로 했는데, 다른 사람들에겐 아직 말하지 않았습니다. 선방해야... ㅎㅎㅎ.
이전 1 ... 54 55 56 57 58 59 60 61 62 63... 76다음
첨부 (1)
lisp.jpg
153.2KB / Download 63
위로