메뉴 건너뛰기

박영식 홈페이지

[수상] 자랑스런 IT인상

[원문보기]
상금이 인상된 건지, 석사라서 많이 준 건지는 몰라도. 지난 해보다 두배다!

[구글차트] Bar width and spacing

[원문보기]

 막대차트를 그리다 보면, width가 chs만으로 조절이 안 될 때가 있다. 4번째 그림 옆에 width가 계산되는 식이 나와 있다. 이런 계산을 무시하고 싶다면, chbh옵션을 a로 줘서 자동적으로 전체 width에 맞게 막대의 굵기를 설정해 주면 된다. 슬림하고, 보기 좋은 막대를 그리기 위해선 계산이 필요하다. 역시 고통이 따르는 것이다.

Description Example

This chart uses the a value to resize values automatically.

The first chart specifies no group spacing, so groups are not apparent. The second chart adds some spacing (15 pixels) between groups.

Vertical grouped bar chart in blue and black, bars and spaces are automatically sized

chbh=a




chbh=a,5,15

This chart uses the r value to specify sizes relative to the bar width. In this chart, spacing between bars is 0.5x bar width, and between groups is 1.5x bar width.

Vertical grouped bar chart in blue and black, bars are automatically sized, spaces expressed as percentage of chart width

chbh=r,0.5,1.5

The first chart has five values in each series, but the chart is too small to hold all the bars with default values:

10 * 23 pixels for bars +
5 * 4 pixels for spacing +
4 * 8 pixels for group spacing                         
282 pixels -- More than the 190 pixel chart width

...so some bars are clipped.

The second chart specifies absolute bar and spacing values to fit all bars in the chart.

Vertical grouped bar chart in blue and black, bars have the default width

chbh omitted
chs=190x125
two series, five values/series


Vertical grouped bar chart in blue and black, bars are automatically sized

chbh=10,5,10

[특허] 커리어플랜 시스템 및 그 방법

[원문보기]
이 특허는 2008년 9월 11일에 출원하여, 2010년 8월 9일에 의견제출통지서를 받았다.

선행기술이 있어서 특허로 등록되기 어렵다는 판단이다.

나도 그렇게 생각한다.

[자격증] 네트워크관리사 2급

[원문보기]
5월 8일에 갱신 시험을 통과해 등기우편으로 도착했다.

5년마다 갱신해야 하는 귀찮음이 있지만, 그만큼 가치가 있는 자격증으로 활용되었으면 한다.

보수교육평가 예상문제를 첨부한다.

[iphone] 10.1.1 탈옥

[원문보기]

IOS 8을 지원하는 앱들이 줄어듬에 따라 아이패드를 9로 업데이트 해서 탈옥하려고 했는데, 3194부터 다양한 에러로 IPSW 를 설치할 수 없어, iphone 6의 IOS 10.1.1 의 탈옥을 시도했다.


http://ryueyes11.tistory.com/9793

를 참고하여 여러번 했지만 실패했는데 https://yalu.qwertyoruiop.com/ 에서 ipa (cydia impactor) 의 링크의 김정은 아이콘을 통해 성공한 듯 하다.


IMPACTOR와 해당 앱, extra 나 mach_portal 을 아직 정확히 구분하지는 못하지만, 천천히 진행하면 될 것 같다.


일단 탈옥 체크 앱에서 탈옥이 탐지되는데 까지는 성공했다.(cydia는 실행되지 않는다.)


http://yalujailbreak.com/


와 https://yalu.qwertyoruiop.com/ 를 참고하자.


[리뷰] 1000 달성

[원문보기]
 기록된 리뷰의 수가 1000을 기록했다.

2006년 9월 8일부터 2010년 4월 17일. 기록에 의한 것이고, 누락된 것도 있으니, 4월 8일로 치면, 4년 7개월, 55개월이고, 날짜로는 1310일 정도 된다. 네이버 리뷰 작성 체계가 바뀌면서 다른데로 옮길까 하는데, 끌리는데가 없다. 좀 더 찾아봐야 할 듯.

[visio] 순서도-dijstra 알고리즘

[원문보기]
변수 초기화 과정은 없다.

- visio는 순서도 및 여러 프로젝트 설계에 관한 일정, 조직도 등을 쉽게 표현할 수 있는 툴이다."

[qt] qt 프로그래밍을 배우기 시작했다.

[원문보기]

 qt creator는 apt-get으로 설치가 안 된다.(2010년 2월 10일 기준)

http://qt.nokia.com/downloads 에서 LGPL을 누르고, 각 OS에 맞는 설치 파일을 다운로드한다.

Ubutu 8.4에서는 일반 linux 파일을 받아서, 실행권한 주고(설명에 나온대로) 따라하면 된다.


기타 라이브러리는 시냅틱 관리자나 

$ sudo apt-get install libqt4-core
$ sudo apt-get install libqt4-debug
$ sudo apt-get install libqt4-dev
$ sudo apt-get install libqt4-gui
$ sudo apt-get install qt4-designer
$ sudo apt-get install qt4-dev-tools
$ sudo apt-get install qt4-doc


위의 명령어를 입력하면 된다.

[accept] Visualization and Structure Analysis for Efficient XML Design

[원문보기]
해외 컨퍼런스에 제출한 논문의 Acceptance가 왔다.

컨퍼런스의 수준이 어느 정도인지 모르겠지만, 상당히 축하할만한 일이다!

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

[원문보기]

문제 풀이 환경을 제공하는 사이트로 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번 문제는 특정 부분을 잘랐을 때, 좌측부분의 합과 우측부분의 합의 차를 구하는 문제이다. 어려운 문제는 아닌데, 문제가 이해가 안 가서 이제야 적어놓는다.

첨부 (0)
위로