|
|
@@ -77,44 +77,6 @@ class Home extends Controller
|
|
|
return view('home', ['menu' => $menu]);
|
|
|
}
|
|
|
|
|
|
- function getMatchingNumbers($target)
|
|
|
- {
|
|
|
- // 定义从1到80的数字
|
|
|
- $numbers = range(1, 80);
|
|
|
- $bestMatch = null;
|
|
|
-
|
|
|
- // 暴力法:随机选取20个不重复数字,并计算对应的3个数字
|
|
|
- for ($i = 0; $i < 100000; $i++) { // 限制尝试次数,避免死循环
|
|
|
- shuffle($numbers); // 随机打乱数字
|
|
|
- $selectedNumbers = array_slice($numbers, 0, 20); // 取前20个数字
|
|
|
-
|
|
|
- // 按照从小到大的顺序排序
|
|
|
- sort($selectedNumbers);
|
|
|
-
|
|
|
- // 计算第一个数字
|
|
|
- $firstSum = $selectedNumbers[1] + $selectedNumbers[4] + $selectedNumbers[7] + $selectedNumbers[10] + $selectedNumbers[13] + $selectedNumbers[16];
|
|
|
- $firstDigit = $firstSum % 10; // 取个位数
|
|
|
-
|
|
|
- // 计算第二个数字
|
|
|
- $secondSum = $selectedNumbers[2] + $selectedNumbers[5] + $selectedNumbers[8] + $selectedNumbers[11] + $selectedNumbers[14] + $selectedNumbers[17];
|
|
|
- $secondDigit = $secondSum % 10;
|
|
|
-
|
|
|
- // 计算第三个数字
|
|
|
- $thirdSum = $selectedNumbers[3] + $selectedNumbers[6] + $selectedNumbers[9] + $selectedNumbers[12] + $selectedNumbers[15] + $selectedNumbers[18];
|
|
|
- $thirdDigit = $thirdSum % 10;
|
|
|
-
|
|
|
- // 计算最终结果
|
|
|
- $result = $firstDigit + $secondDigit + $thirdDigit;
|
|
|
-
|
|
|
- // 如果符合目标结果,返回这组数字
|
|
|
- if ($result === $target) {
|
|
|
- $bestMatch = $selectedNumbers;
|
|
|
- break; // 找到一个匹配的结果后,结束循环
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return $bestMatch;
|
|
|
- }
|
|
|
|
|
|
public function test()
|
|
|
{
|
|
|
@@ -123,7 +85,7 @@ class Home extends Controller
|
|
|
$target = intval($target);
|
|
|
|
|
|
|
|
|
- $matchingNumbers = $this->getMatchingNumbers($target);
|
|
|
+ $matchingNumbers = PcIssueService::getMatchingNumbers($target);
|
|
|
if ($matchingNumbers !== null) {
|
|
|
// echo "找到的数字是:" . implode(", ", $matchingNumbers);
|
|
|
} else {
|