| [ KAIST ] in KIDS 글 쓴 이(By): guest (MAX) <magicall2.dacom.> 날 짜 (Date): 2002년 3월 29일 금요일 오전 12시 06분 05초 제 목(Title): Re: [질문]간단한 수학문제.. 많이 봐주세� > ducklove 님과 위의 guest 님은 100으로 나누어 남는 수가 균일하게 분포되기 > 만 하면 야바위가 아니라고 생각하시고, 또 그래서 ducklove 님의 코드도 그 > 렇게만 검사를 하는데... 제가 말씀드리고 싶었던 바는 perfect(?)한 uniform distribution을 보이는 rand()를 쓰더라도 rand() % M 이라는 표현은 bit size에 의한 구조적인 문제점을 가지고 있다는 것입니다. 다시 한번 제 글을 천천히 읽어보시기 바랍니다. 저는 균일하게 분포되기만 하면 야바위가 아니라고 말한적 없습니다. 오히려 bit size에 의한 구조적인 문제로 균일하게 분포되기 어려운 경우를 지적하였습니다. 님의 야바위 정의에 반대하는것은 아닙니다. 당연히 주기적인 패턴을 보인다면 문제가 있지요. 다만 (제가 판단컨대) ducklove님이 실험에 의해 의도했던것은 크게 뭉치지 않는다는 것만 보이려고 했던 것입니다. > 저와 박종대님의 생각은 랜덤하지 않아도 균일하게 분포할 수 있고, 또 균일 > 하다는 게 증명이 되어도 그게 야바위가 아니라고는 말할 수 없다는 겁니다. 저는 bit size에 의한 구조적인 문제로 *균일하게 분포되기조차 어려울수* 있음을 말하고 싶었던 겁니다. 즉, rand()%100 이라는 표현을 쓰면 야바위가 되는 것입니다. perfect한 rand()를 쓰더라도 bit size에 의한 구조적인 문제로 rand()가 32bit의 리턴값을 갖는경우 rand()%100 에 있어서 0과 99의 기대값은 서로 다릅니다. > +1 씩만 증가시키는 극단적인 예를 보여드리니까 오히려 혼동하시는 것 같은 > 데, rand() 함수의 구현에 따라 다르겠지만, 어떤 경우에는 특정 수를 나누어 > 남는 수를 취할 嚥?그 값이 어느 정도 일정한 규칙성을 갖게 되는 경우도 > 발생 할 수 있다는 얘기를 하고 싶은 겁니다. 주기적인 패턴에 의한 야바위 정의는 님의 의견에 동의합니다. 또한 함수 구현에 따라 그런 일이 발생할수 있음도 당연히 이해합니다. > 그리고 ducklove 님의 코드는 그러한 규칙성이 있든 없든 분포만 보기 때문에 > 결국 야바위인지 아닌지는 이 코드만 가지고는 알 수가 없다는 거죠. (균일한 > 분포를 갖는 야바위도 생길 수 있기 때문에...) 네 100% 동의합니다. 다만 저는 이론적(?)으로 rand()%M은 균일하게 분포하기(조차) 어려운 경우가 있음을 지적하였습니다. |