티스토리 툴바

블로그 이미지
나이데브의 디지털릭 판타지. 나이데브

카테고리

분류 전체보기 (361)
Linux (120)
Win32/64 (7)
ProgPost (16)
내 이야기 (179)
LiveUSB Dev (17)
Game (7)
허튼 짓 (6)
Zaurus (8)
Total330,142
Today18
Yesterday33
몇 년전에 읽었던, '화학이 화끈화끈(?)'이라는 도서에서 본 것이 생각나 적어봅니다.

'금'에 관해서 나온 부분이었는데, 어떤 바보같은 사람이 황철석에서 금빛이 난다고 생고생해가며

황철석을 듬뿍 배에 실어갔는데, 사실 금이 아니었다는 이야기가 있었습니다.

오늘 'ㅂㅌ알고리즘 1 : 덧셈으로만 제곱구하기'는 정말 그런게 아닐까 싶습니다.

전 뭔가 대단한 알고리즘을 발견한 줄 알았습니다.


문제의 코드 :
print a
while a <= 10000:
    b=a+a;print b;a = b
(요즘 codegolf 이야기가 자주 나와서, 좀 줄여봤습니다.)

왜 2는 성립하는데 3부터는 성립이 안하는지 의문이었습니다.

결국 손으로 계산해 보니, 다음과 같더군요.

a = 2 라고 했을때, a + a = 2a = a^2 과 동일하다.
그렇습니다. 전 2한테 농락당했습니다. (ㄲㄲ)

이쯤되면 더이상 설명은 필요하지 않겠군요. 그저 도망가는 수밖에 =3=3

ps. 추가로 몇몇 숫자의 계산 결과를 넣어볼까 합니다.

nidev@kaleido ~ $ python bt.py 4
4 8  16  32  64  128  256  512  1024  2048  4096  8192  16384

nidev@kaleido ~ $ python bt.py 8
8  16  32  64  128  256  512  1024  2048  4096  8192  16384


입력된 숫자가 2^n (n은 양의 정수) 일때, n씩 건너뛰어가며 숫자를 보시면 정상적으로 보이는 제곱수가 나옵니다.

뭔가 쓸모가 있을거 같은데, 정말 쓰잘데기 없어보이는군요;

'ProgPost' 카테고리의 다른 글

xchat 스크립트의 신기술(?)을 만들었습니다.  (0) 2007/01/15
나이데브의 황철석 이야기  (6) 2007/01/12
rss.py 를 만들었습니다.  (4) 2007/01/12
Posted by 나이데브

최근에 달린 댓글

최근에 받은 트랙백

글 보관함