나는 1984년에 태어났다.
http://www.hankyung.com/news/app/newsview.php?aid=2009011511581&intype=1&nv=1
그도 1984년에 태어났다.
난 전문연구요원, 그는 수령…
…뭐지?!
나는 1984년에 태어났다.
http://www.hankyung.com/news/app/newsview.php?aid=2009011511581&intype=1&nv=1
그도 1984년에 태어났다.
난 전문연구요원, 그는 수령…
…뭐지?!
통계 페이지의 위에는 국가별 통계가 있다.
남한에서는 179명이 참여하고 있다. 북한에 2명 -_-; 놀라운 일일 따름이다…
그리고 국가별 통계 밑에 보면 언어별 통계가 있는데, 정말 이렇게 많은 컴퓨터 언어가 있다는 점에 놀라게 된다. 그리고 한가지 특기할만한 사항은, Pencil/Paper가 있다는 점(!) 설마 Pencil이나 Paper라는 언어가 있을 것 같지는 않고, 직접 손으로 풀었다는 뜻으로 보인다. 사용자 평균 등급을 보면 10%를 차지하고 있다.
가장 많이 쓰는 Python/C/C++/Java 등의 등급이 잘해야 13%이고 10%정도에 머물러 있는 것을 보면 놀라울 따름이다.
그래서 그렇게 푸는 사람들이 누가 있는지 살펴봤는데, 전부 다 푼 사람도 있다. 진짜일까!? 뭐…그게 진짜로 손으로 다 풀었는지 어쨌는지는 나로서는 알 수 없는 노릇이지만, 사실이라면 정말 대단한 것 같다. 내가 앞발로 만든 C 프로그램을 컴퓨터가 두시간씩 걸려서 풀어준 문제도 있는데, 그걸 손으로 풀었다면, 천재이거나 엄청난 끈기의 소유자이거나, 둘 다이거나…
흥미로운 점은 – 그중에 5위에 한국인이 있다는 점. 현재 195문제로, 바로 어제 새로운 문제를 풀었다고 한다.
음…난 이제 겨우 30문제 풀었는데. 나머지 200여문제는 언제 풀어보려나 모르겠다.
아무튼. 천재들을 바라보고 따라갈수록, 나도 그만큼의 실력을 갖추게 되는 거겠지. 이렇게 생각하든 저렇게 생각하든, 논리적인 결과는 같을테니.
블로그에 질문을 올리는 것도 가능하다. (응?)
나는 다음과 같은 코드를 작성하였다.
End Sub
End Class
앞발로 짠 코드이므로 가독성이나 그런건 전혀 신경 안쓰고 막 두들겼다.
이 코드가 하는 일은 다음과 같다.
1. 모니터 화면의 특정 영역을 감시한다. (이 예제 코드에서는 0,0에서 10,10까지의 왼쪽 상단 모서리)
2. 특정 영역에 변화가 생기면
3. 알림 팝업을 띄운다.
이걸 왜 만드는가…
그것은, 월급 400만원 받는 사람이 모니터를 뚫어지게 바라보고 있다가 특정 영역에 변화가 생기면 마우스를 클릭하는, 그런 일을 하고 있기 때문이다. 그 사람에게 다른 일을 시키기 위해서 이 부분을 자동화 시켜야 한다.
물론…이 프로그램을 만든다고 해서 절약된 돈 400만원의 일부가 나에게 성과급으로 돌아올 것인가…그건 전혀 기대할 수 없다.
아무튼.
요점은, 위의 코드를 실행하는 Form1에는 버튼이 하나 있고, 그 버튼을 클릭하면 저 프로그램의 코드가 작동을 시작하도록 되어 있다.
문제는 저 코드를 실행시키면 예상대로 무한루프에는 빠져 들어가는데, 화면이 변해도 감지를 못한다는 점이다. 무한루프 자체에 너무 빠져버린 듯…
그래서 – 화면을 감시하는 프로그램은 대체 알고리즘이 어떻게 되어 있는 걸까?
일단은 그런 알고리즘을 찾는다는 핑계로 인터넷 서핑을 하고 있었다. 정신을 차려보니 네이버 뉴스와 올블로그를 돌아다니는 나를 발견, 급히 이 글을 작성해 둔다.
http://oops.org/?t=lecture&sb=beginner&n=1
다른 사람에게 질문을 던지고 싶은 사람이라면 누구든지 위의 글을 반드시 읽어볼 것을 권한다. 김정균 님이 작성하신
HOWTO For Beginners
이다.
아까 누가 메신저에 등록해서…
그분과의 대화를 저장하였다.
사실 대화하면서 많이 답답했다. 포트포워딩이 왜 필요한지 말도 안하고 포트포워딩을 해달라고 하였으니…
만약 내가 왜 할거냐고 안 물어봤다면 나의 대답은 다음과 같았다.
1. 리눅스 설치하세요.
2. 터미널에서 sudo apt-get install iptables 를 입력하세요.
3. iptables 설정하세요
물론 내가 iptables를 개뿔 아는게 있을리 없지만, 이건 그 이전에 매우 기본적인 것에 대한 내용이다. 일단 이 분은 리눅스가 무엇인지 모르고 계셨기에… 아니, 그보다는 운영체제라는 것에 대해서 모르고 있었던 것 같다. ”
윈도에서 큐파일이라는 프로그램을 이용하기 위해 포트포워딩을 해야 한다
“는 것을 질문했어야 제대로 된 답이 나올텐데, 앞쪽을 잘라놓고 ”
포트포워딩을 해야 한다
“는 것만 질문 하면 그 어떠한 전문가라도 iptables 를 쓰라고 할 것이다.
http://www.google.co.kr/search?q=%ED%8F%AC%ED%8A%B8+%ED%8F%AC%EC%9B%8C%EB%94%A9&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ko:official&client=firefox-a
구글에서 검색해보면 iptables를 이용하는 방법이 가장 처음에 나온다. 어쨌든, 나야 뭐 질문도 많이 해봤고 대답도 많이 해봤기에 답답함을 이겨내고 원초적인 부분을 파내서 이분이 원하는 답을 해주긴 했지만. 뭔가 안된다는 질문은 아무런 대답도 얻을 수 없는 공허한 질문이다. 뭐가 안된다는 건지 알려주지 않으면 답이 나오지 않는 법이다.
그래서, 질문을 잘하는 것이 좋은 대답을 얻는 비결이다. 우문에는 우답밖에 나오지 않는다.
더보기
매트릭스의 기본 설정은, 기계들이 엄청나게 많은 인간의 뇌를 조작하여 그들이 모두 매트릭스 안에서 꿈을 꾸도록 한다는 것이다. 그리고 그 꿈은 현실과 똑같다.
현실에서, 우리는 아기를 만든다. 그렇다면, 매트릭스에서는 그 과정을 도대체 어떻게 처리하는 것일까?
인공 보육실이 있다 치고, 인공 자궁에서 아기를 만든다고 치자. 그럼, 그걸 공장에서 기계적으로 생산하는 것이 아니라 “꿈” 속에서 아기가 만들어질 때 마다 새로운 실제의 아기를 만들어서 꿈 속에서 그 아기가 태어나는 시점에 실제의 아기와 연결시켜주고, 그 속에서 실제의 아기가 꿈을 꾸기 시작하도록 만드는 것인가?
매트릭스에서 이 문제를 어떻게 해결했는지가 정말 궁금하다. 객체지향적으로 말하자면, 새로운 Human 객체를 생성해서 Parent로부터 상속을 해 주는 과정에서 생성자를 어떻게 처리하는가, 그것이 문제인 것이다.
물론…
너무 깊이 들어가면, 다치겠지만.
Project Euler에서 이메일이 한통 왔다.
Next Live Quiz Competiton on:
17th JAN. 2009
4:00 PM -GMT
10:00 PM -BAN 9:30 PM -IND
Fix your local data and time here:
View
Current Time: 11th January 2009 11:42:52 AM UTC
Quiz covers the follwoing topics:
C/CPP programming puzzles
c aptitude questions
Algorithm
Data Structure
Simple Math
IQ
Total questions:
Not fixed yet
Time:
Not fixed yet
For any query regarding the contest, feel free to mail me: slimonbd@yahoo.com (also IM)
흠…
재밌을 것 같아서 일단 신청했다. 못하면 말지 뭐. ㅋㅋ
알고리즘과 자료구조와 IQ에서 망칠 것 같다. 다른 분야라고 자신있는건 아니지만. -_-;
신청은 다음 URL에서 하면 된다.
1을 자연수 n으로 나누면 유리수다. (당연히!) 예를 들어…
|
1 / 2 |
= | 0.5 |
|
1 / 3 |
= | 0.(3) |
|
1 / 4 |
= | 0.25 |
|
1 / 5 |
= | 0.2 |
|
1 / 6 |
= | 0.1(6) |
|
1 / 7 |
= | 0.(142857) |
|
1 / 8 |
= | 0.125 |
|
1 / 9 |
= | 0.(1) |
|
1 / 10 |
= | 0.1 |
여기서 (6)은 무한히 반복됨을 뜻한다. (142857)은 142857이 무한히 반복된다는 뜻이다.
가령, 1/6은 1자리의 순환 마디를 갖고 있다. 1/7은 6자리의 순환 마디를 갖고 있다.
문제 : 1부터 1000까지의 자연수 중, 1/d가 가장 긴 순환 마디를 갖게 되는 자연수 d를 찾아라.
이 문제를 풀기 위해서 고민을 하는데, 도저히 방법이 안보인다. 지금까지 푼 29개의 문제는 어떻게든 (시간이 오래 걸리더라도) 풀긴 했는데, 이건 수가 없다.
일단 알아낸 것 – d가 2나 5만을 인수로 갖는다면 그냥 넘어가도 된다. 확실하게 유한소수니까.
고민해본 방법 1
1/d=x라고 하자. x, 10x, 100x, 1000x…이런 식으로 10을 곱해나간다. 그리고, 10x-x, 100x-x, 1000x-x등등을 계산해서 정수로 떨어지면 그때까지 반복한 회수를 세면 된다
문제점 – 1/6을 처리할 수 없다. -_-;
고민해본 방법 2
그래서. 10x-x, 100x-x, …를 계산하고, 그때마다 10, 100, 1000…을 곱해서 정수로 떨어지게 만들어 보려고 했다.
문제점 – 어느세월에 끝나나…
고민해본 방법 3
순환마디의 특징을 고찰해 보자.
x=0.abcde…(xyz) 이런 식으로 되어 있다.
어릴 적에 배운 기억을 되짚어 본다.
이런 걸 풀기 위해서는 x에다가 최초의 순환마디가 끝나는 데 까지의 자리수만큼인 10^m을 곱한 숫자에서 최초로 순환마디가 나오는 데 까지의 자리수만큼인 10^n을 곱한 숫자를 뺀다.즉 x(10^m-10^n) 을 계산한다고 들었다. 근데 어차피 내가 필요한 숫자는 m-n아닌가?
!$^$%@#$^@#%&@$%*@%^@#$%…..
꼬였다.
누가 힌트좀 주세요. -_-;
신학과 기독교의 학문적 성향을 혼동하여 표현하지 않으셨으면 좋겠군요. 아무튼, 문맥상 기독교가 학문적인 성향을 갖고 있음을 나타낸 것으로 보입니다. 그런데, 예를 들어 보지요. 불교 또한 전 세계적으로 영향을 미치고 있는 종교인데, 그 영향력이 기독교에 비해서 약하다고 생각하는 것은 편협한 사고 아닐까요? 또한, 실제로 불교가 기독교에 비해 영향력이 약하다고 하더라도, 가장 널리 퍼지고 가장 영향력있고 가장 연구가 활발한 종교라 하여 기독교가 가장 학문적이라고 주장하는 것은 주관적인 관점으로 보입니다. 불교도인 사람이 볼 때는 불교가 가장 학문적일 수 있습니다.
샤머니즘의 정의를 조사해 보면 다음과 같습니다.
http://mtcha.com.ne.kr/korea-term/sunsa/term6-samunisum.htm
자. 기독교에서 하지 않았던 걸 골라보세요.
초자연적 존재 – 기독교의 교리에 의하면, 있죠.
초자연적 존재와 직접 접촉, 교섭 – 예수님이나 하나님과 직접 만났다는 사람, 많이 있죠.
점복, 예언, 치병, 제의, 사령 – 예수나 기타 성자들이 하고 다닌 일이죠.
제가 보기엔 기독교도 샤머니즘에 속하는 것 같습니다. 반박해 주시기 바랍니다.
그리고, 하버드든 예일이든 옥스퍼드든 그 대학이 기독교 신학 연구에서 출발한 신학대학이었다는건, 당시에는 “학문”이라든가 “과학”이라고 할만한 것이 모두 “신학”의 범주에 있었기 때문입니다. 고대 그리스의 대학이 모두 “철학”을 가르쳤지만, 그 철학의 범주 안에 “기하학”과 “음악”이 포함되었던 것과 같죠. 즉, 하버드나 옥스퍼드 대학 설립 초기의 신학은 당시의 세상을 설명하는 그쪽 동네의 유일한 세계관이 기독교 세계관이기 때문에 신학 대학에서 출발한 겁니다. 오히려 기독교 세계관을 따르지 않는 그 바깥의 세상은 모르고 지낸, 어찌 보면 무식한 학문이라고 말할 수도 있습니다. 동국대학교도 처음에는 “불교사범학교”에서 시작했다는 점을 알려 드리죠.
여러 다른 종교와 기독교를 동일 선상에서 “학문적인 성향”을 따진 것이 적절하지 않다고 하였는데, 이 말은 다른 종교의 신도들이 들으면 굉장히 기분 나쁘겠군요. 차라리 저는 모든 종교는 학문적이지 않다고 주장하겠습니다.
이건 그저 기독교가 폭발적으로 성장했다는 소리밖에 되지 않죠. 불교가 폭발적으로 성장했다면, 불경 역시 100년 안에 5300개 이상의 사본을 만들어 낼 수도 있습니다. 오히려, 기독교가 폭발적으로 성장하면서, 사실이 아닐 수도 있는 성경을 “진실”이나 “진리”라고 주장하는 “사람의 수”가 늘어났다는 의심이 드는군요. 제 의도는 성경의 모든 것을 의심하겠다는 것이 아니라, “성경의 모든 것이 진실이고 진리이다”라는 주장을 의심하겠다는 겁니다.
일단, 앞 부분은 그냥 “성경이 많이 복사되었다”는 양적인 측면에 관한 내용이므로 건너 뛰도록 하죠. 이 기록이 객관적이지 않다는 것은 버나드 램이 말한 마지막 문장에 적혀 있군요. 저자들이 감정 상태가 다른 상태에서 기록하였는데 어떻게 그것이 “진실”이나 “사실”을 담을 수 있는지 모르겠군요. 게다가, 그 기록에 자신의 주관적인 해석을 덧붙이지 않았다는 보증도 없죠. 역사학자들이 말하는 “성경은 믿을만하다”라는 것은, 가령 솔로몬이 작성한 부분에 대해서 그것이 솔로몬이 자신의 이야기를 기록하였고 대체로 그 시대의 상황을 서술하고 있다는 것일 뿐이지 그것이 있는 그대로 진실이고 진리임을 뜻하지는 않습니다.
성경이 경이로운 책이라면, 제가 좋아하는 도덕경도 경이로운 책입니다. 똑같이.
자…”옳은길” 님이야말로 제 말을 오해하셨군요. 과학은 – 그 과학이 어느 분야든지(자연과학, 사회과학, 인문과학) – 부정될 수 있어야만 합니다. 다시말해서, “이 가설은, 이런 종류의 증거가 발견된다면 부정된다.”라는 주장이 가능해야 합니다. 진화론은 말씀하신대로 그런 “부정적인” 증거들이 존재할 수 있으며, 진화론을 지지하는 학자들은 그러한 부정적인 증거들을 설명하기 위해서 연구합니다.
창조론은 그것을 “긍정하는” 근거들만 있습니다. 저는 도저히 이해가 되지 않는 점이, 창조론에서는 “이러이러한 증거가 발견된다면 창조론은 부정된다”는 주장이 단 하나도 없다는 겁니다. 어떤 경우에, 어떤 증거가 발견된다면 창조론을 부정할 수 있는지 얘기해 주세요. 그럼 창조론을 과학이라고 인정해 드리죠.
또한, 진화론이 틀렸다고 하여 창조론이 긍정되는 것이 아님을 분명히 해 둡니다. 이건 아주 많은 창조론자들이 빠진 논리적 오류입니다. 진화론의 진리 여부는 창조론의 진리 여부와 관련이 없습니다. 진화론이 참이라면 창조론은 참일 수 없겠지만, 진화론이 거짓이라 하여 창조론이 참이 되지는 않습니다. 창조론이 참이라는 것은 독립적으로 증명되어야만 합니다.
그리고, 파스칼, 줄, 브라운, 스테노, 모리스, 케플러 같은 아주 유명한 과학자들이 창조론자였다고 해도, 일단 그 사람들은 진화론이 나오기도 전에 살았던 사람들이라 진화론이 뭔지도 모른 사람입니다. 당연히 성경을 믿었을 거고 창조론밖에 없었겠죠. 아울러 창조과학회가 저명한 과학자들로 구성되어 있다 하더라도 주장 자체가 논리적으로 오류가 있는데 어떻게 믿습니까?
의학, 윤리학은 기독교 아니더라도 발달했을 학문입니다. 불교에도 윤리학은 있고 힌두교에도 윤리학은 있으며 유교에도 윤리학은 들어가 있죠. 동양권에서 발달한 한의학은 기독교의 영향을 전혀 받지 않았지만, 나름의 독자적인 체계와 효과를 갖고 있습니다. 이러한 점은 기독교가 없었다 하더라도 의학이 발달할 수 있음을 충분히 시사합니다.
그리고 영국에서 기독교나 성공회 같은 크리스트 교 계열의 종교 말고 다른 종교가 있었나요? 인권유린을 한 사람들은 이단이고 웨슬리와 휫필드는 이단이 아닌가요? 제가 볼 때, 인권유린을 하는 사람과 그걸 막은 사람들 모두가 기독교도들인걸로 알고 있는데, 그럼 애초에 기독교가 좋은 일은 한 점은 없는 것으로 쳐야 하지 않나요? 아니면, 기독교의 영향과 상관 없이 사람은 나쁘거나 좋거나 개개인의 특성에 따라 달라진다고 봐야 하지 않습니까?
평양대부흥운동에 대해서는 제가 알고 있는 역사가 아니므로 뭐라고 할 말은 없지만, 저는 백만번 좋은 일을 한다 하더라도 단 한번 나쁜일을 한다면 그걸 용서해서는 안된다고 생각합니다.
이 부분은 제가
http://snowall.tistory.com/656
에 정리한 것이 있으므로 읽어보시기 바랍니다.
이렇게 한번 생각해 보죠.
기독교에 대해 올바른 가르침을 따르지 않는 자들을 모두 제외해 놓고 기독교의 영향력을 따져 봅시다. 십자군 전쟁을 일으킨 자들을 제외하면, 그 시대의 당시 기독교의 영향력은 얼마나 되었을까요? 마녀 사냥을 주도했던 자들을 모두 제외하고서 그 당시의 기독교의 영향력을 따져 봅시다. 우리나라에서 여의도 순복음 교회를 빼놓고 기독교의 영향력을 따져 봅시다. 기독교가 얼마나 영향력이 있겠습니까? 그래도 기독교가 세계적인 종교일까요?
제가, 기독교의 치부를 들춰내느라 기독교의 좋은 점에서 눈을 가리고 있는 것은 아닐까요? 글쎄요. 그럼, 기독교의 좋은 점은 다른 종교가 갖고 있는 좋은점 또는 좋은 행동과 어떻게 다릅니까? 기독교가 “가장 좋다”라고 말할 수 있는 특별한 차별화된 무언가가 있나요?
제 주변에는 교회를 다니는 독실한 크리스챤인 친구들이 아주 많아서 그 친구들과 교회 내부의 문제에 대해서 여러가지를 전해들을 수 있습니다. 그런데, 그런 얘기를 듣다보면 교회랑 국회랑 그닥 구별이 가질 않더군요.
제가 당부하고픈 마지막 부탁은 첫째, “기독교인에 대한 깔보는 태도”를 수정하시고요. 둘째, “신에 대한 검증의 잣대를 본인들에게도 적용” 하라는 것입니다. 제가 보았을 때 이 두가지 난점은 무신론자들이 지니고 있는 가장 큰 결점인 것 같군요.
저는 신이 존재함을 증명하라고 요구하지 않습니다. 있든 없든 신경쓰지 않을 따름이지요. 저는 그래서 신에게 욕도 잘 해줍니다. 칭찬도 해주지요.
다만, 그런식으로 증명할 수 없는 것들을 갖고서 “과학”이라고 부르는 사람들은 깔볼 수 밖에 없습니다.
그리고 자신이 믿는 종교가 좋다 하여 남에게 강요하는 사람을 깔볼 수밖에 없습니다. “나는 하나님 안에서 행복합니다. 당신도 이 행복에 동참하세요”라는 좋은 말로, 그들은 행복을 저에게 강요합니다. 행복하기를 강요하는 것은 저에게 지옥입니다. 그런 사람들을 저는 깔봅니다.
저는 그냥 지옥에 가겠습니다.
끝으로, 신에 대한 검증은 요구하지 않으므로 이러한 검증의 잣대를 저에게 들이댈 이유도 없겠죠.
int isAbundantNumber(int);
int sumOfDivisors(int );
int main(void){
int i,j,n,sum;
int abun[6965];
for(i=1;i<28124;i++){
if(isAbundantNumber(i) == TRUE){
abun[j]=i;
j++;
}
}
for(i=1;i<28124;i++){
if(isRepresentable(i, abun)==TRUE){
n+=i;
}
}
n = (28123*28124/2)-n;
printf(“The answer is %d\n”, n);
return TRUE;
}
int isAbundantNumber(int a){
if(a
}
else{
return FALSE;
}
}
int isRepresentable(int a, int *b){
int i,j,sum;
for(i=0;i<6965;i++){
for(j=0;j<6965;j++){
sum=b[i]+b[j];
if(sum==a){
return TRUE;
}
}
}
return FALSE;
}
int sumOfDivisors(int a){
int i,n;
n=1;
for(i=2;i
if(a%i==0){
n+=i;
}
}
return n;
}
이번에도 1분이 넘긴 했지만…-_-;
아무튼 풀었다.
잔머리 굴리다가 자꾸 틀려서, 그냥 Brutal Force 방식으로 때웠다.