Sablog Models 55

2010 정보올림피아드 지역본선 고등부 문제 Review (3)

색상환 색을 표현하는 기본 요소를 이용하여 표시할 수 있는 모든 색 중에서 대표적인 색을 고리 모양으로 연결하여 나타낸 것을 색상환이라고 한다. 미국의 화가 먼셀(Munsell)이 교육용으로 고안한 20색상환이 널리 알려져 있다. 아래 그림은 먼셀의 20색상환을 보여준다. 그림 1. 먼셀의 20색상환 색상환에서 인접한 두 색은 비슷하여 언뜻 보면 구별하기 어렵다. 위 그림의 20색상환에서 다홍은 빨강과 인접하고 또 주황과도 인접하다. 풀색은 연두, 녹색과 인접하다. 시각적 대비 효과를 얻기 위하여 인접한 두 색을 동시에 사용하지 않기로 한다. 주어진 색상환에서 시각적 대비 효과를 얻기 위하여 서로 이웃하지 않은 색들을 선택하는 경우의 수를 생각해 보자. 먼셀의 20색상환에서 시각적 대비 효과를 얻을 수 ..

2010 정보올림피아드 지역본선 고등부 문제 Review (2)

가로수 직선으로 되어있는 도로의 한 편에 가로수가 임의의 간격으로 심어져있다. KOI 시에서는 가로수들이 모두 같은 간격이 되도록 가로수를 추가로 심는 사업을 추진하고 있다. KOI 시에서는 예산문제로 가능한 한 가장 적은 수의 나무를 심고 싶다. 편의상 가로수의 위치는 기준점으로 부터 떨어져 있는 거리로 표현되며, 가로수의 위치는 모두 양의 정수이다. 예를 들어, 가로수가 (1, 3, 7, 13)의 위치에 있다면 (5, 9, 11)의 위치에 가로수를 더 심으면 모든 가로수들의 간격이 같게 된다. 또한, 가로수가 (2, 6, 12, 18)에 있다면 (4, 8, 10, 14, 16)에 가로수를 더 심어야 한다. 심어져 있는 가로수의 위치가 주어질 때, 모든 가로수가 같은 간격이 되도록 새로 심어야 하는 가..

2010 정보올림피아드 지역본선 고등부 문제 Review (1)

블로그에 떡밥이 없어서 1년이 거의 다 된 소재를 지금이라도 뿌리기로 했다. 이렇게라도 활동을 시작하면 뭔가 소재가 생각나지 않을까... (도망) 주사위 네개 1에서부터 6까지의 눈을 가진 4개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 규칙(1) 같은 눈이 4개가 나오면 50,000원+(같은 눈)*5,000원의 상금을 받게 된다. 규칙(2) 같은 눈이 3개만 나오면 10,000원+(3개가 나온 눈)*1,000원의 상금을 받게 된다. 규칙(3) 같은 눈이 2개씩 두 쌍이 나오는 경우에는 2,000원+(2개가 나온 눈)*500원+(또 다른 2개가 나온 눈)*500원의 상금을 받게 된다. 규칙(4) 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)*100원의 상금을 받게 ..

집을 유비쿼터스 환경으로 만들자! - 인터넷 연결 공유 (ICS)

Windows Vista Home Basic 환경 [+ T5 PMP 테스팅]을 기준으로 작성되었습니다. 제 환경이죠. 'ㅅ' 오늘은 집안을 유비쿼터스 환경으로 만드는 방법을 소개합니다. 정확히는 별도의 무선 공유기 없이 유선인터넷을 무선인터넷으로 바꾸는 방법입니다. 모두가 알다시피 무선 랜 카드를 가진 모든 장치는 이미 구성된 무선 네트워크에 접속할 수 있습니다. 이 네트워크는 유선으로(아마도, 위성 전화 제외) 연결된 어떤 네트워크 라우터에서 만든 것이죠. 그러나 무선 애드혹(ad hoc) 네트워크라는 개념을 탑재하면 무선 랜 카드가 장착된 PC에서도 직접 무선 네트워크를 만들 수 있습니다. 한편 랜 카드가 둘 이상 있고 하나가 인터넷에 연결된 경우, 다른 랜 카드에 연결된 시스템과 인터넷 연결을 공유..

프로그래머가 말하는 PMP 100배 활용 - (*) Qt Creator 포팅 후기

Qt Creator를 제 PMP(T5)에 포팅하는 데 성공했습니다. (사진) 사진이 흐려서 죄송합니다. 일단 너무 감격스럽습니다. 내가 성공하다니! 사진상에는 생략되어 있지만 USB 키보드를 연결해서 잘 쓰고 있습니다. 일단 잘만 되면 프로젝트는 모두 PMP에서 작성하고 컴파일만 데스크탑에서만 할 생각입니다. WinCE용 VS라든지 Qt와 함께 쓸만한 컴파일러가 없다는 게 통탄스러울 따름입니다.

JIT (Just-in-time) debug, Post mortem debug.

온갖 IDE와 SDK를 설치해 놓고, 지웠던 VS6를 그 위에 설치하는 도중 이런 메시지를 보게 되었다. 처음에는 무슨 소리인지 알아듣지 못할 뻔했지만 알아들었다. MSDN: JIT 연결 설정 (VS2005, VS2008) JIT 디버깅이란 VS나 Java에서 주로 쓰이는 용어로, 이미 만들어진 바이너리 오브젝트에 디버거를 붙이는 것이다. Post mortem (사후) 디버깅과 비슷한 뜻이라고 흔히 알려져 있다. 다만 정확히 하자면 JIT 디버깅은 사후 디버깅의 일종이다. CRT에서 JIT 디버거를 붙일 적절한 방법이 없다면 사후 디버깅은 오브젝트 덤프를 통해 하는 게 일반적이다. Qt Creator 설치 과정에서도 JIT 디버거 설정을 할 수 있다. 결국 이미 런타임/실행파일 디버거가 있는데, VC6를..

프로그래머가 말하는 PMP 100배 활용 - (3) PMP용 Qt/PMP에서 개발하기.

(헐) 나는 Qt Creator를 WinCE에 포팅(...)하는 것을 목표-_-로 하고 달려들기 시작했다. 별로 어려운 과정은 아니다. ...라고 하기에는 이게 필요하다. Microsoft Visual Studio 2005 / 2008 Professional Edition - Visual C++ Standard Edition은 안 된다고 합니다. 그리고 무슨 영문인지 모르겠지만 제게는 MSVC2008P가 있습니다. 죄송합니다. 자세한 내용은 3번에서 언급합니다. 이 글은 현재 시점을 기준으로 쓰인 글이며, 변경될 소지가 있습니다. 그러나 변경될 경우에도 이 글에서 소개하는 방법과 절차는 어느 정도 유효합니다. 1. Qt Creator 소스 패키지 + Qt 4.7 내려받기 http://qt.nokia.co..

티스토리용 SyntaxHighlighter 3.0을 소개합니다!

시험 기간이 끝나자마자 포스팅을 시작한다. 이러니 성적이 좋을 수가 있나. 2010년 7월 2일, SyntaxHighlighter 3.0.83이 배포되기 시작했다. (사본 다운로드) 티스토리용 파일은 글 하단에 있지만 수정된 파일 하나만 올려 놓았기 때문에 이 파일도 받아야 한다. - SyntaxHighlighter 웹 사이트 바로가기 1. 소개 3.0은 매우 많은 개선점을 컨셉으로 만들어졌다. 외부 동작 변화 Copy to Clipboard와 View Source가 하나로 합쳐졌다고 할 수 있겠다. 원래 클립보드에 복사할 때에는 플래시 파일을 쓰고, 소스 보기에는 새 창을 띄웠다. 이제 렌더된 SH 영역을 더블클릭해 주면 소스를 편집할 수 있다. 이 상태에서 영역을 선택하거나 일부를 지우고 복사할 수 ..

프로그래머가 말하는 PMP 100배 활용 - (2) 준비 과정 2

(시험 기간, 하루 시험 보고 정신 못 차리고 컴퓨터를 붙잡다니) 중요한[?] 사실. .cab 파일은 캐비넷 압축 파일이라고 하며 설치용입니다.-_- Windows CE 탐색기 상에서 더블클릭하면 실행됩니다. 설치 프로그램이 따로 있는 프로그램의 경우 ActiveSync나 WMDC를 거치게 됩니다. 일단 호스트 PC에 설치하면 나중에 휴대용 기기가 연결되었을 때 알아서 옮겨집니다. 이 때 PMP의 연결 모드를 ActiveSync(액티브싱크)로 설정해 주세요. ActiveSync/WMDC는 경험상 필요할 때에만 사용하는 게 좋겠습니다. 파일 이동 중에도 기기를 쓸 수 있다는 건 장점이지만, 대용량 저장소 설정으로 연결하는 것에 비해 데이터 이동이 너무 느립니다. 제가 만든 건 아니고, 일단 몇 가지 파일을..

프로그래머가 말하는 PMP 100배 활용 - (1) 준비 과정

(그나저나 블로그 접고 공부만 하려고 했는데 Orz) 원래 1편은 잘 알려진 프로그램과 부가 기능들을 소개하는 글로 만들려 했으나, 개발툴을 소개하는 일을 먼저 해야겠습니다. 제목의 링크는 위키백과 한국어판의 글로 통합니다. 1. ActiveSync & Windows Mobile Device Center ActiveSync와 Windows Mobile Device Center가 무엇인지 이 글에서 굳이 설명하는 것은 자원 낭비. 다만 XP 이하에서는 ActiveSync를, Vista 이상에서는 Windows Mobile Device Center를 씁니다. Vista에서는 ActiveSync를 설치할 수 없습니다. XP에서 WMDC를 쓰는 것도 마찬가지로 불가능. ActiveSync 4.5 / (ko) D..