SALVEI 4
This commit is contained in:
parent
0a80d2023d
commit
06385a65ab
@ -144,9 +144,14 @@
|
|||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</div>
|
</div>
|
||||||
<button id="btn-apply-elite" class="btn btn-warning btn-sm w-100 mt-3 fw-bold rounded-pill shadow-sm">
|
<div class="d-flex gap-2 mt-3">
|
||||||
<i class="bi bi-check-circle-fill"></i> CALCULAR COM ESTES NÚMEROS
|
<button id="btn-recalculate-math" class="btn btn-outline-warning btn-sm flex-grow-1 fw-bold rounded-pill">
|
||||||
</button>
|
<i class="bi bi-calculator-fill"></i> RECALIBRAR MATEMÁTICA
|
||||||
|
</button>
|
||||||
|
<button id="btn-apply-elite" class="btn btn-warning btn-sm flex-grow-1 fw-bold rounded-pill shadow-sm">
|
||||||
|
<i class="bi bi-check-circle-fill"></i> ATIVAR ESTES NÚMEROS
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -305,6 +310,50 @@
|
|||||||
const viewport = document.querySelector(".generator-viewport");
|
const viewport = document.querySelector(".generator-viewport");
|
||||||
const elitePanel = document.getElementById("elite-panel");
|
const elitePanel = document.getElementById("elite-panel");
|
||||||
|
|
||||||
|
// Novo Algoritmo de Probabilidade de Elite (Busca por Quadra 4+)
|
||||||
|
function recalculateDeepElite() {
|
||||||
|
if (!lotteryData || !lotteryData.name.toLowerCase().includes('quina')) return;
|
||||||
|
|
||||||
|
speak("Iniciando Recalibragem Neural de Alta Precisão para o próximo concurso.");
|
||||||
|
|
||||||
|
const allNums = Array.from({length: 80}, (_, i) => i + 1);
|
||||||
|
const frequency = lotteryData.elite_greens; // Histórico de frequência
|
||||||
|
const delayed = lotteryData.reclaimed_numbers; // Números em atraso
|
||||||
|
|
||||||
|
// Peso 1: Frequência Harmônica (30% de peso)
|
||||||
|
// Peso 2: Atraso Crítico (50% de peso - Essencial para o próximo concurso)
|
||||||
|
// Peso 3: Quadrantes (20% de peso - Equilíbrio)
|
||||||
|
|
||||||
|
let candidates = allNums.map(n => {
|
||||||
|
let score = 0;
|
||||||
|
|
||||||
|
// Pontua por frequência (Inverso para evitar vício)
|
||||||
|
const freqIdx = frequency.indexOf(n);
|
||||||
|
if (freqIdx !== -1) score += (10 - (freqIdx / 8));
|
||||||
|
|
||||||
|
// Pontua por Atraso (Ouro para o próximo sorteio)
|
||||||
|
if (delayed.includes(n)) score += 15;
|
||||||
|
|
||||||
|
// Bônus de Quadrante (Distribuição Geométrica)
|
||||||
|
const quad = Math.ceil(n / 20);
|
||||||
|
score += 2;
|
||||||
|
|
||||||
|
return { num: n, score: score };
|
||||||
|
});
|
||||||
|
|
||||||
|
// Ordena por maior score de probabilidade
|
||||||
|
candidates.sort((a, b) => b.score - a.score);
|
||||||
|
|
||||||
|
// Seleciona as 10 dezenas com Convergência Matemática
|
||||||
|
const top10 = candidates.slice(0, 10).map(c => c.num).sort((a, b) => a - b);
|
||||||
|
|
||||||
|
customEliteNumbers = top10;
|
||||||
|
fillEliteInputs(top10);
|
||||||
|
updateElitePanel();
|
||||||
|
|
||||||
|
speak("Matemática de Elite aplicada. 10 dezenas de ouro selecionadas para busca de Quadra.");
|
||||||
|
}
|
||||||
|
|
||||||
lotterySelect.addEventListener("change", async (e) => {
|
lotterySelect.addEventListener("change", async (e) => {
|
||||||
const key = e.target.value;
|
const key = e.target.value;
|
||||||
if (!key) return;
|
if (!key) return;
|
||||||
@ -318,6 +367,8 @@
|
|||||||
document.getElementById("col-duque").classList.remove("d-none");
|
document.getElementById("col-duque").classList.remove("d-none");
|
||||||
document.getElementById("col-terno").classList.remove("d-none");
|
document.getElementById("col-terno").classList.remove("d-none");
|
||||||
document.getElementById("col-sena").classList.add("d-none");
|
document.getElementById("col-sena").classList.add("d-none");
|
||||||
|
// Se for quina, aplica a nova matemática automaticamente
|
||||||
|
setTimeout(recalculateDeepElite, 1000);
|
||||||
} else {
|
} else {
|
||||||
document.getElementById("col-duque").classList.add("d-none");
|
document.getElementById("col-duque").classList.add("d-none");
|
||||||
document.getElementById("col-terno").classList.add("d-none");
|
document.getElementById("col-terno").classList.add("d-none");
|
||||||
@ -326,7 +377,9 @@
|
|||||||
|
|
||||||
setupFunnel(lotteryData.max_number);
|
setupFunnel(lotteryData.max_number);
|
||||||
updateElitePanel();
|
updateElitePanel();
|
||||||
fillEliteInputs(lotteryData.elite_greens.slice(0, 10));
|
if (!key.toLowerCase().includes('quina')) {
|
||||||
|
fillEliteInputs(lotteryData.elite_greens.slice(0, 10));
|
||||||
|
}
|
||||||
btnStart.disabled = false;
|
btnStart.disabled = false;
|
||||||
document.getElementById("stats-bar").classList.remove("d-none");
|
document.getElementById("stats-bar").classList.remove("d-none");
|
||||||
resetGenerator();
|
resetGenerator();
|
||||||
@ -592,6 +645,11 @@
|
|||||||
const eliteSwitch = document.getElementById("elite-mode-switch");
|
const eliteSwitch = document.getElementById("elite-mode-switch");
|
||||||
const eliteInputs = document.querySelectorAll(".elite-num-input");
|
const eliteInputs = document.querySelectorAll(".elite-num-input");
|
||||||
const btnApplyElite = document.getElementById("btn-apply-elite");
|
const btnApplyElite = document.getElementById("btn-apply-elite");
|
||||||
|
const btnRecalculateMath = document.getElementById("btn-recalculate-math");
|
||||||
|
|
||||||
|
btnRecalculateMath.addEventListener("click", () => {
|
||||||
|
recalculateDeepElite();
|
||||||
|
});
|
||||||
|
|
||||||
function fillEliteInputs(numbers) {
|
function fillEliteInputs(numbers) {
|
||||||
eliteInputs.forEach((input, idx) => {
|
eliteInputs.forEach((input, idx) => {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user