메뉴 건너뛰기

박영식 홈페이지

[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 (비회원)
    • 글자 크기

댓글 달기

[공모전] 타율로 계산해 보면....

[원문보기]
공식적으로 11번 시도해서 4번은 실적이 있는 것이니, 3할 6푼이다. 아직 타석에 서도 되겠네요. 물론 누락된게 있긴 한데, 나중에 또 채워서 계산해 봐야할 듯."

[인생] 세상은 호락호락하지 않다. - 내야안타...

[원문보기]
Screencast event

Play, developerWorks! 스크린캐스트 제작 이벤트 결과

 


 

IBM developerWorks에서 지난 2개월간 진행한 'Play, developerWorks!' 스크린캐스트 제작 이벤트 결과를 발표합니다.
심사를 거쳐 총 6개 작품이 최우수, 우수, 장려 작품으로 선정됐습니다. 
또한 8월 10일 이전에 제출해주신 8분에게는 Early Bird 상품이 전달됩니다. 
쉽지 않은 제작 과정을 거쳐야 하는 이번 스트린캐스트 제작 이벤트에 참가하고 관심가져주신 모든 분들에게 감사의 말씀을 전합니다.

 

 
  • 최우수 작품상(맥북): 채수원(Mock Object 를 사용해서 쉽게 테스트 하기)
  • 우수 작품상(아이팟 터치): 권민혁(When GEF met EMF), 이국진(Rational Team Concert 소개 및 설치 방법)
  • 장려상(외장 하드): 박영식(Use Ext, Aptana, and AIR to build desktop applications), 김성안(자바 개발자를 위한 이클립스 3.4 가니메데), 홍창범(리눅스 철통 보안을 위한 셸 제거하기)
  • Early Bird 상(블루투스 헤드셋): 김학영, 박범진, 황성민, 권혁, 박영식, 이상민, 신진아, 권민혁

 

 

# 이벤트 경품은 참가시 제출한 주소로 9월 20일 이전에 배송될 예정입니다. 
  (배송 주소 변경을 원하시는 분은 dwkorea@kr.ibm.com/02-3781-5339로 연락주시기 바랍니다)
# 최우수 작품상과 우수 작품상 수상작은 9월 16일부터 developerWorks 웹사이트에 게재될 예정입니다.

"

 

[헐] 집에 왔다.

[원문보기]
음. 디카가 고장나긴 했지만, 별 다른 데미지는 없었다.

진인사 대천명

센드엔 프레이

9월 2일 첨가.
OZ 공모전은 수상하지 못 했다. LGT는 명분을 중시하지 않나보군."

[광고] 헌혈마케팅 in Web 2.0 age

[원문보기]

5segons_en.swf

 

for you it is just a moment,
for us it can be a whole life."

 

[공모전] OZ 모바일 웹사이트 공모

[원문보기]

http://browser.lgtelecom.com/event/oz_ev04_all_list.jsp

일단 위의 주소로 가서
5page로 이동하세요.

36 모바일 헌혈의집 찾기

를 클릭하시고, <이 사이트에 한표>를 클릭해 주시면 됩니다. 부탁드려용! (완료 후, 답문 부탁)

"

[sc] Use Ext, Aptana, and AIR to build desktop applications"

[원문보기]

IBM developerWorks

(screencast)

 

1.     제작자 : 박영식(010-8628-2231)

 

2.     제목 : Use Ext, Aptana, and AIR to build desktop applications

 

3.     내용 : 오픈소스인 Aptana studio Ext library Air plug인을 사용하여, 데스크탑과 웹에 저장가능한 간단한 연락처 프로그램을 만든다.

 

4.     기획의도 : DW기사의 주요 주제인 AJAX에 대해 다루고, PHP와 더불어 오픈소스인 압타나 스튜디오에 대한 이해를 높이고자, 영문기사인 Use Ext, Aptana, and AIR to build desktop applications를 선정하였다. 그리??기존 스크린캐스트에 재미를 더하기 위해 스토리텔링식 구성으로 시작하였다.

 

5.     참고목록

A.     Use Ext, Aptana, and AIR to build desktop applications

B.      Mastering Ajax, Part 1 : Introduction to Ajax

C.      Command-line PHP - PHP I/O channels

 

6.     사용 프로그램

A.     Camtasia Recoder

B.      Windows Movie Maker

C.      Magic One

D.     Adobe Premiere Pro CS3

E.      Voiceware voice demo service(TTS Program)

"

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

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

[PHP] 나라기록검색서비스 OpenApi Library for PHP

[원문보기]

아래는 리턴 XML입니다. 자세한 사항은 프로그래밍 게시판을 참고하세요.

<rss version="2.0">

<channel>
<title>국가기록원 오픈 API 검색 결과</title>
<total>1000</total>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200300886847</rc_rfile_no>
<rc_ritem_no>000000000044</rc_ritem_no>
<title>검색장비임차요청</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>서울올림픽대회 조직위원회</prod_name>
<prod_year>1987</prod_year>
<is_open>1</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200300886847&rc_ritem_no=000000000044
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200301031092</rc_rfile_no>
<rc_ritem_no>000000000041</rc_ritem_no>
<title>검문검색결과보고</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 서울특별시지방경찰청 용산경찰서 정보과</prod_name>
<prod_year>1965</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200301031092&rc_ritem_no=000000000041
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200301031092</rc_rfile_no>
<rc_ritem_no>000000000064</rc_ritem_no>
<title>검문검색결과보고</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 서울특별시지방경찰청 용산경찰서 정보과</prod_name>
<prod_year>1965</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200301031092&rc_ritem_no=000000000064
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302714364</rc_rfile_no>
<rc_ritem_no>000000000028</rc_ritem_no>
<title>검문검색에 대한지시</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 강원도지방경찰청 보안과</prod_name>
<prod_year>1969</prod_year>
<is_open>2</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302714364&rc_ritem_no=000000000028
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302716788</rc_rfile_no>
<rc_ritem_no>000000000283</rc_ritem_no>
<title>검문검색강화지시</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 강원도지방경찰청 경비과</prod_name>
<prod_year>1968</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302716788&rc_ritem_no=000000000283
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302716795</rc_rfile_no>
<rc_ritem_no>000000000145</rc_ritem_no>
<title>검문검색강화</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 강원도지방경찰청 경비과</prod_name>
<prod_year>1969</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302716795&rc_ritem_no=000000000145
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302720206</rc_rfile_no>
<rc_ritem_no>000000000029</rc_ritem_no>
<title>검문검색철저</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 충청북도지방경찰청 괴산경찰서 정보과</prod_name>
<prod_year>1963</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302720206&rc_ritem_no=000000000029
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302720208</rc_rfile_no>
<rc_ritem_no>000000000011</rc_ritem_no>
<title>검문검색상황보고</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 충청북도지방경찰청 괴산경찰서 정보과</prod_name>
<prod_year>1969</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302720208&rc_ritem_no=000000000011
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302720212</rc_rfile_no>
<rc_ritem_no>000000000008</rc_ritem_no>
<title>검문검색강화지시</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 충청북도지방경찰청 괴산경찰서 정보과</prod_name>
<prod_year>1971</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302720212&rc_ritem_no=000000000008
</link>
</item>

<item>
<rc_type>RITEM</rc_type>
<rc_code>1310377</rc_code>
<rc_rfile_no>200302720217</rc_rfile_no>
<rc_ritem_no>000000000016</rc_ritem_no>
<title>특별검문검색지시</title>
<mgt_org_name>국가기록원</mgt_org_name>
<prod_name>경찰청 충청북도지방경찰청 괴산경찰서 정보과</prod_name>
<prod_year>1973</prod_year>
<is_open>3</is_open>
<arcave_type>01</arcave_type>
<doc_type>A</doc_type>
<online_reading>N</online_reading>

<link>
http://search.archives.go.kr/showDetailPopup.htm?rc_code=1310377&rc_rfile_no=200302720217&rc_ritem_no=000000000016
</link>
</item>
</channel>
</rss>"

[명함] 명함이 새로 나왔습니다.

[원문보기]
무하하하하... 직책은 컨설턴트죠.

[통계] 흥미로운데...

[원문보기]
부모의 교육수준이 높음을 암시하는 백인 남자아이의 이름 상위 20위 1. 도브(16.50) 2. 아키바(16.42) 3. 샌더(16.29) 4. 야닉(16.20) 5. 샤샤(16.18) 6. 기욤(16.17) ============= 나머지는 귀찮아서... 그리고 저작권을 보호하기 위해서....(괴짜경제학 plus 중에서) 그래서 나는 부모의 교육수준이 낮음을 암시하는 백인 남자아이의 이름 13위이며, 가장 인기 있는 흑인 남자아이 이름인 Micheal 대신 Yanncik을 사용하기로 했다. Yeongsik와 상당히 유사하기 때문이다. 이제, 야닉이다. ㅋㅋ"
이전 1 ... 56 57 58 59 60 61 62 63 64 65... 78다음
첨부 (0)
위로