<?php function get_rand($proArr) { $result = ''; //概率数组的总概率精度 $proSum = array_sum($proArr); //概率数组循环 foreach ($proArr as $key => $proCur) { $randNum = mt_rand(1, $proSum); if ($randNum <= $proCur) { $result = $key; break; } else { $proSum -= $proCur; } } unset ($proArr); return $result; }
상품 배열은 이 복권의 모든 상품 정보를 기록하는 2차원 배열로, id는 당첨 레벨, 상품은 상품, v는 당첨 확률을 나타냅니다. v는 정수여야 합니다. 해당 보상의 v를 0으로 설정할 수 있습니다. 이는 보상 획득 확률이 0임을 의미합니다. 배열(기본)에 있는 v의 합은 더 큽니다. 정확한 확률을 반영할 수 있습니다. 이 예에서 v의 합이 100이면 태블릿의 당첨 확률은 1%입니다. v의 합이 10,000이면 당첨 확률은 1/10000입니다. $proArr은 사전 설정된 배열입니다. 배열이 array(100,200,300,400)라고 가정합니다. 확률 범위 1,1000에서 첫 번째 숫자를 검사하여 발생 확률 범위 내에 있는지 확인합니다. 확률 공간은 k에서 방금 숫자를 뺀 값의 확률 공간입니다. 이 경우에는 마이너스 100이므로 두 번째 숫자가 1,900 범위 내에서 필터링된다는 의미입니다. 이런 식으로 심사가 끝날 때까지 항상 요구 사항을 충족하는 숫자가 있습니다. 이는 상자 안의 무언가를 만지는 것과 같습니다. 첫 번째 것도 없고, 두 번째도 없고, 세 번째도 없으면 마지막 것도 있어야 합니다. 이 알고리즘은 간단하고 매우 효율적입니다. 중요한 점은 이 알고리즘이 이전 프로젝트, 특히 대용량 데이터가 있는 프로젝트에 적용되었다는 것입니다.
이 사이트의 모든 리소스는 네티즌이 제공하거나 주요 다운로드 사이트에서 재인쇄되었습니다. 소프트웨어의 무결성을 직접 확인하십시오! 이 사이트의 모든 리소스는 학습 참고용으로만 사용됩니다. 상업적 목적으로 사용하지 마시기 바랍니다. 그렇지 않으면 모든 결과에 대한 책임은 귀하에게 있습니다! 침해가 있는 경우 당사에 연락하여 삭제하시기 바랍니다. 연락처: admin@php.cn
관련 기사

29 Jul 2016
도서관 관리 시스템 활용 사례 다이어그램: 도서관 관리 시스템 활용 사례 다이어그램 도서관 관리 프로그램(1): 이 수준의 프로그램에서 사용하는 데이터 테이블 구조: # ------ --- --------------------- # # 데이터 테이블 구조 'author' # CREATE TABLE 작성자 ( author_id int (6) DEFAULT '0' NOT NULL auto_increment, first_name varchar(20)

29 Jul 2016
도서관 관리 시스템 소스 코드: 도서관 관리 시스템 소스 코드 php 무작위 인증 코드 생성 이미지 코드: 다음과 같이 코드를 복사합니다: <?php /** 기본 홈페이지**/ class DefaultController extends AppController { public function index() { $len = 5 ; $str = "ABCDEFGHIJKLNMPQRSTUVWXYZ123456789"; $im = imagecreatetruecolor (70, 20);

29 Jul 2016
도서관 관리 시스템 수요 분석 : 도서관 관리 시스템 수요 분석 도서 관리 프로그램 (2) : 도서 카탈로그 입력 부분 : <? if(!$UploadAction): ?> <? 출판사 데이터. //편집자: Kong Xiuxiang. Date: 2001/3/24 /* session_start(); if (!isset($auth_passed)) { echo "이 기능은 승인된 사용자만 사용할 수 있습니다." } if(isset($u_name)) {

01 Nov 2024
Go로 도서관 관리 시스템 구축하기 이 기사에서는 Go로 구현된 LMS(라이브러리 관리 시스템)를 살펴보고 핵심 기능, 디자인 결정 및 주요 코드 조각을 강조합니다. 라이브러리 관리의 핵심 기능

28 Sep 2024
cmhtml.dll은 내 컴퓨터에서 무엇을 하고 있나요? 응급처치 도서관 이 과정은 아직 검토 중입니다. cmhtml.dll과 같은 비시스템 프로세스는 시스템에 설치된 소프트웨어에서 시작됩니다. 대부분의 응용 프로그램은 하드 디스크에 데이터를 저장하고


Hot Tools

종속성 주입 컨테이너용 PHP 라이브러리
종속성 주입 컨테이너용 PHP 라이브러리

50개의 뛰어난 클래식 PHP 알고리즘 모음
클래식 PHP 알고리즘, 훌륭한 아이디어를 배우고 사고력을 확장하세요

이미지 최적화를 위한 작은 PHP 라이브러리
이미지 최적화를 위한 작은 PHP 라이브러리
