TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #1084 · 9.04

В общем, была задача на оптимизацию плана работ: есть набор заказов, и в каждом N тасков. Таски могут зависеть друг от друга или нет, имеют длительность и тип. Ещё есть M работников, каждый из которых может выполнять таски только определённых типов, причём, у каждого своя скорость. Если все таски в заказе выполнены, фирма получает сколько-то денег. У заказа есть дедлайн, за просрочку штраф (за каждый день просрочки), который вычитается из цены заказа. И ещё фирма тратит деньги за каждый день своей работы независимо от того, как загружены её сотрудники (то есть просто платит зарплаты по сути). Ещё важен учёт праздников и выходных. Нужно заработать на определённом наборе заказов и работников как можно больше денег. Полный текст задачи и код программы проверки есть в репозитории. Эта задача является изменённым заказом, который мы с напарником решали в реальной жизни: оптимизация работы печатных станков для типографии. Правда, тогда и мы справились так себе, и заказчик в итоге сначала захотел всё вручную сам делать, а потом и вовсе похоронил проект при смене директора. !!! Не читайте дальше, если хотите сначала попробовать решить самостоятельно, потому что я сейчас опишу эффективные подходы и результаты. ________________________________________ Так вот. Мы с другим экспертом Андреем сразу сели и написали разные варианты, чтобы задать шкалу, по которой будем оценивать решения команд. За пару часов я собрал примитивный жадный алгоритм, который сортировал заказы по прибыльности и укладывал в сетку кое-как, это дало нам нижнюю оценку. Мой алгоритм заработал ~75 млн виртуальных рублей, мы решили для оценки поставить нижней границей 40 млн. То есть всё, что ещё ниже, оценивалось в ноль баллов за качество оптимизации. Затем Андрей закрылся дома на три дня и вышел на свет со сложным жадным алгоритмом, который очень хитро сортировал заказы и очень хитро укладывал их в сетку, попутно выбирая разные способы этой укладки в зависимости от конкретного заказа. Это позволило заработать ~275 млн рублей. Мы сделали верхней границей для оценки 280 млн. К сожалению, в итоге только две команды из десяти прошли нижнюю границу, заработав, соответственно, ~91 и ~105 млн. К верхней границе не приблизился никто. И у четырёх команд алгоритм вообще не смог уложить без нарушений задачи в сетку (то есть, например, произвольно менял длительности, накладывал задачи друг на друга, давал одному работнику две задачи в один момент и так далее). Важной ошибкой команд, на мой взгляд, являлся тот факт, что никто не воспользовался возможностью запустить алгоритм на несколько минут и дать ему поработать. По условиям задания, можно было тянуть до 5 минут на одну оптимизацию, но по факту решения команд отрабатывали за единицы и десятки секунд. На самом конкурсе, пока команды работали, я решил попробовать сделать быстрое (по времени написания) но эффективное решение. Сначала попробовал жадную сортировку + доведение до лучшего варианта методом имитации отжига. В качестве нового состояния я просто менял местами заказы целиком. Этот вариант работал пару минут и дал мне около ~200 млн дохода. К слову, команда-лидер использовала такой же подход, просто не докрутила число итераций и температуру. Ну и потом я взял готовую либу по реализации классической генетики с особями и скрещиванием. Особью был массив с приоритетами заказов (которые конечно же нужно было аккуратно уложить чистым алгоритмом). Тип скрещивания: scattered. Всего 15 поколений по 20 особей, и это за минуту-полторы давало ~230-240 млн. Считаю, что для конкурса это самый лучший выбор: пишется одним человеком за день и даёт почти максимум, при этом легко настраивается на нужную длительность работы, легко параллелится. Ну а потом уже дома я посидел и накодил свой вариант сложного жадного с плавающим окном перебора отсортированных заказов и плавающей же укладкой по работникам. Такая штука за две минуты зарабатывает ~281 млн. Но за три дня в условиях стресса я бы такое не сделал, скорее всего. #dev

Hashtags

Резултати

Намерени 2 подобни публикации

Търсене: #env

当前筛选 #env清除筛选
Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #3938 · 25.08.2025 г., 06:03

#env#github#dasturlash_hayoti Env fayllar bilan ishlash Dastur yozishda ko‘p hollarda API kalitlari, parollar, tokenlar kabi maxfiy ma’lumotlardan foydalanishga to‘g‘ri keladi. Bu ma’lumotlarni hech qachon kodingiz ichiga to‘g‘ridan-to‘g‘ri yozmang❌. ✅ Buning uchun .env faylidan foydalaniladi. .env fayl — sizning loyihangizdagi maxfiy sozlamalarni saqlash joyi. Masalan: DB_HOST=127.0.0.1 DB_USER=root DB_PASSWORD=secret API_KEY=your_api_key_here 🔹 Dastur bu qiymatlarni .env fayldan o‘qib ishlatadi. 🔹 Kodni GitHub’ga joylashtirganingizda .env faylni hech qachon yuklamang! 👉 Buning uchun .gitignore faylida quyidagi qatordan foydalaning: .env Shunda .env fayl GitHub’ga tushmaydi va maxfiy ma’lumotlaringiz xavfsiz qoladi. 📌 Xulosa: ◾️API kalitlari, login va parollarni .env faylga joylashtiring ◾️.env faylni doim .gitignore ga qo‘shing ◾️GitHub’ga yuklashdan saqlaning 🔐 Shunday qilsangiz, loyihangiz yanada xavfsiz va professional bo‘ladi. Siz odatda .env faylni qayerda ishlatib ko‘rgansiz – Laravel, Django, yoki boshqa frameworkda? Izohlarda yozib qoldiring 👇 💻@dasturlash_hayoti — bir xatoni tuzatib, ikkinchisiga tayyorlanish! 😅

问答环节 q:渗透需要学历吗? a:如果是找工作肯定需要,自学的话和学历没关系,能不能干事的唯一标准就是能力 q:自学遇到了瓶颈,无法提升也无法实战怎么办? a:外围多看实战资料,内网多打靶机跳出被教程引着走的圈子,搞懂原理自己理解,有空自行思考复现几个漏洞比看教程有价值 q:公安执法部门等国家队是不是都非常强? a:错误的,公安涉及技术的只有网警,知识来源于大学警校中网络安全与执法专业,需要花费一部分时间学习司法执法相关知识,并且会侧重取证,监控等非渗透知识。第二是公安属于体制内公务员,各类人事应酬非常多,技术上是难以保持一线的,一般重大事故或行动都会外包给安全公司。但外包有外包的好,公安部门作为网络安全主管部门能调动的资源非常多,你们熟知都什么奇安信深信服都是晶哥的打手,所以也千万别去招惹警察叔叔 q:外群是拿来做什么的,投了简历也没见有行动? a:后续会开展实战行动以及针对组员的拔高培训,录课中勿催 q:在渗透中感觉最难的是什么? a:各种报错,没有之一 q:表姐有男朋友吗?平时穿黑丝吗?喜欢什么样的男生? a:有。正式场合会穿黑丝,但是因为我比较暴力经常穿成一次性用品所以频率不高。喜欢像孙笑川那样儒雅随和又很文明的人 q:CVE-2023-27372中SPIP公域表单值序列化处理不当 利用php代码中的ENV**可以在密码重置模块实现注入,怎么利用实现rce? a:控件中把protege_champ()这个函数作为正则表达式, 函数的代码: <!-- File : /squelettes-dist/formulaires/oubli.html --> <input[ (#HTML5|?{type="email" class="text email" autofocus="autofocus" required="required",type="text" class="text"})] name='oubli' id='oubli' value="#ENV**{oubli}" autocapitalize="off" autocorrect="off" /> 这个函数对HTML表单字符动态处理,从请求中获取名为"oubli"的GET或POST参数,和SPIP模板构造冲突了,所以输入字段是不对序列化字符进行处理的。把序列化PHP字符串注入变量$_POST['oubli']到/spip.PHP端点上重置密码,从而page=spip_pass,在服务器上有导致RCE。 q:孙尚香出装出什么? a:疾步鞋黑切无尽宗师电刀,最后泣血复活甲二选一 q:学渗透没有天赋怎么办? a1(saber):转行 a2(落老师):天赋是一方面,经验也很重要,不是绝对的 a3(某倭瓜):有兴趣就好,可以先尝试,试一试总比直接放弃好 a4:(老黄):我特么双非一本呢还不是学得挺好,别学什么小迪暗月坑人 a5(🐗老师):天赋决定的是上限,安全直到红队高级为止不怎么看天赋 a6(🚗🧊):有这时间学网安费力不讨好的,自己哪个有天赋学哪个吧 q:自学web可以找工作吗? a:基本同一,看能力,不过web神仙太多了,选什么二进制嵌入式就业会更方便

Hashtags