Powerball 은 현재 대성공 (2016 년 1 월 11 일 현재)이 약 15 억 달러 ( USD )의 역사상 가장 큰 로또 상 이기 때문에 최근 주목을 받고있는 미국 복권입니다 .
파워 볼 선수는 69 개의 하얀 공에서 5 개의 다른 숫자를 선택하고 26 개의 빨간 공에서 1 개의 "파워 볼"숫자를 선택합니다. 그들은 이길 자신의 다섯 개 하얀 공의 선택은 임의의 순서로 그려진 것과 일치하면 대성공을, 그리고 그들이 올바른 "로또"수를 선택합니다.
따라서 대박 당첨 확률은 1 in (69 choose 5)*(26 choose 1)
또는 ((69*68*67*66*65)/(5*4*3*2*1))*26
이며 이는 292,201,338에서 1입니다.
2016 년 1 월 9 일에 가장 최근의 그림 에서 대박을 얻은 사람은 없지만, 2016 년 1 월 13 일 오후 10시 59 분 (ET)에 다음 그림을 이길 수 있습니다.
도전
Powerball 도면을 시뮬레이트하는 프로그램 또는 함수를 작성하고 입력은받지 않고 1에서 69까지 5 개의 다른 임의의 숫자를 출력 한 다음 1에서 26까지의 1 개의 임의 "Powerball"숫자를 출력하십시오 (5 중 하나를 반복 할 수 있음) 초기 번호).
"Powerball"숫자는 항상 출력에서 마지막 숫자 여야하지만 그렇지 않으면 처음 5 개의 숫자 순서는 중요하지 않습니다.
6 개의 숫자는 선택적으로 단일 후행 줄 바꿈을 사용하여 공백으로 구분하거나 줄 바꿈으로 구분 하여 decimal 로 출력해야합니다 . 쉼표, 대괄호 및 기타 문자는 출력에 허용되지 않습니다.
따라서 이것들은 유효한 결과가 될 것입니다 ( 마지막 그림 의 숫자 사용 ) :
32 16 19 57 34 13
32
16
19
57
34
13
가능한 모든 결과는 균일 한 확률로 가능해야합니다. 내장 의사 난수 생성기를 사용하고이 표준을 충족한다고 가정 할 수 있습니다.
다음은 Python 2 또는 3에서 작동하는 ungolfed 참조 구현입니다.
import random
print(' '.join(map(str, random.sample(range(1,70), 5) + [random.randint(1, 26)])))
바이트 단위의 가장 짧은 코드가 이깁니다.
나는 Powerball과 아무런 관련이 없으며 실제로 게임을 제안하지는 않습니다. 그러나 여기서 프로그램 중 하나에 의해 생성 된 숫자에서 무언가를 얻는다면, 우리는 그것에 대해 듣고 싶습니다. :디
5! = 5*4*3*2*1
5 가지를 정리할 수 있는 방법이 있으므로이를 고려하십시오.