Files
sim-numerics/PREREG_flat_judge_2026-09-21.md

3.8 KiB
Raw Permalink Blame History

PREREG — плоский режим: одно суждение похожести на входе и на выходе

Составлено до кода и до прогона, ветка signfix-and-gates. Валерий: «нужно решать задачу так, чтобы и на канонических, и на широких скобках был выигрыш».

Основание (sweep_flatexit.json, разбор where_we_lose.py, без нового прогона)

канонические широкие fun1 fun2 fun3–6 fun8 fun9
Чандрупатла 2787 2441 103 152 1068 63 55
предложенный метод 2806 3220 99 141 1823 52 105
+ залипание с выходом 3125 2503 147 158 1057 72 69
  • Плоские семейства после выхода — на уровне Чандрупатлы (−11 в сумме).
  • Весь остаток проигрыша — ложные входы на простых корнях: канонические +319, fun1 +48, fun2 +17, fun8 +20. Флаг «несбывшееся обещание» входит в 134 из 154 канонических задач.
  • Потолок при безошибочном входе: широкие ≈ 1057 + (99 + 141 + 1000 + 52 + 55…105) = 2404…2454 против 2441 — запас тонкий, записан заранее.

Правило (новых констант нет)

Режим prestep="flatjudge". После каждого вычисления f в новой точке x, до сдвига скобки, суждение похожести по двум предсказаниям:

  • линейное: L(x) = FA + (FB − FA)(x − A)/(B − A) — прямая через концы скобки;
  • плоское: 0.

плоско — если |f(x)| < |f(x) − L(x)|; линейно — если |f(x) − L(x)| < |f(x)|; равенство — ни то, ни другое. На середине L = (FA + FB)/2 — это ровно суждение выхода из flatstickexit.

  • Вход: последний шаг был шагом модели, знак не сменился, r ≥ ¼ (флаг) и в этой точке суждение — плоско.
  • В режиме: каждый шаг — середина.
  • Выход: на середине суждение — линейно.

Предохранитель применяется к шагу как всегда.

Проверка

Решение принимается по смоуку (он считает предложенный метод на всех 199 задачах); сервер — только для подтверждения числа, если прошло. Ячейки: предложенный метод и он же с Г2 (повтор рисунка шагов), none / flatjudge / flatstickexit.

# ПРОЙДЕНО, если
J1 широкие скобки ниже Чандрупатлы (2441)
J2 канонические ниже Чандрупатлы (2787)
J3 гарантия: 0 нарушений, решено ≥ 193
J4 сообщается: число входов на канонических и неплоских широких против flatstickexit

Цель задачи (Валерий): J1 и J2 одновременно — выигрыш на обоих наборах. Принимается вариант, выполнивший J1, J2, J3; без Г2 или с Г2 — сообщаются оба. Если не выполнено: сообщается, какой набор и на сколько не дотянул, и в каких семействах.