首页 > 其他分享 >2024.2.22 梦想 在什么地方 总是那么令人向往

2024.2.22 梦想 在什么地方 总是那么令人向往

时间:2024-02-22 23:11:35浏览次数:27  
标签:二分 2024.2 前缀 22 min 可以 向往 斜率 右侧

字符串太难了。
今天早上起来牙又疼了,很难受。

UOJ461

考虑当前已经把整张图分成了 \(L,R\) 两个点集,考虑 extend 一个点进来。
可以使用二分的方式,具体的将未加入的点按任意顺序排列,二分一个前缀并断掉 \(L,R\) 与这个前缀的所有边,找到一个最小的前缀满足此时不连通,此时对于这个点可以认为它可以被 extend 进点集。
判断这个点在哪一边是容易的,依靠这个也可以判二分图。
于是做到 \(O(n\log n+2n)\) 次。
https://uoj.ac/submission/679581

CF1534G

欲使 \(\max(|X-x|,|Y-y|)\) 最小,则有 \(|X-x|=|Y-y|\),那么意味着我们的 \((X,Y)\) 一定会是 \((a,x+y-a)\)。
将所有点按 \(x+y\) 排序,于是我们一定会向右或者向右上走,于是可以列出 DP,令 \(f_{i,x}\) 表示在 \((x,x_i+y_i-x)\) 这个位置取 \((x_i,y_i)\) 的最小代价:

\[f_{i,x}=|x-x_i|+\min_{x'\in[x-(x_i+y_i)+(x_{i-1}+y_{i-1}),x]}f_{i-1,x'} \]

此时 \(f_{i}(x)\) 可以认为是一个下凸函数。考虑这些操作在下凸函数上的操作,即 slope trick。

  • \(\min\) 操作:可以认为是拉伸最小值段,相当于对右侧的所有斜率变化点添加一个定值。
  • \(+|x-x_i|\) 操作:讨论这个位置是在左侧还是右侧,可以认为是添加一个斜率变化点。

于是使用堆维护左右两侧的斜率变化点,对于 \(\min\) 操作可以为 \(R\) 打懒标记,加绝对值可以认为是插入两个 \(a_i\),左侧的最大值需要弹到右侧或者右侧弹到左侧,可以维护,\(O(n\log n)\)。
https://codeforces.com/contest/1534/submission/247760096

标签:二分,2024.2,前缀,22,min,可以,向往,斜率,右侧
From: https://www.cnblogs.com/cnyzz/p/18028145

相关文章

  • 2024.2.22模拟赛T3 题解
    对于区间连边,可以线段树优化建图对于单点连边,可以使用李超线段树维护迪杰斯特拉code#include<bits/stdc++.h>usingnamespacestd;#defineN400005#defineintlonglong#definepiipair<int,int>#definefirfirst#definesecsecondintn,m,tot;intval[N];const......
  • 2.22 闲话 & solution 『虽然我不是神/不像他们无所不能/却总畏惧一语成谶』
    有↑没有↓谁↑能够↓代↑替↓我↑(去考开学的一调)唐氏模拟赛,板子大战,全场都是板子,\(\textT3\)甚至还不如板子,\(byd\)题解居然是用的高贵的\(O(n\logn)\)算欧拉函数,唐\(\text{lxyt}\)复活赛打赢了可以去打\(\text{HEOI2024}\)了,体验名额DZ和xrlong的代码进行了大量对拍,仍......
  • 李宏毅2022机器学习HW3 Image Classification
    Homework3数据集下载在本地环境下进行实验总是令人安心,但是又苦于网上找不到数据集,虽然kaggle上有数据集但是下载存在问题于是有了一个天才的想法,间接从kaggle上下载(利用output文件夹中的文件是可下载这一机制将数据集从input文件夹拷贝到output文件夹),具体操作如下图等待数......
  • Visual Studio 2022 .Net 8 启用AOT publish enabled 发布失败
    .Net8NativeAOT的优势: 我使用VisualStudio2022创建了一个面向.NET8的控制台应用程序。我在创建项目时选中了启用本机AOT发布选项。它给出了以下错误: 错误文本:发布遇到错误。发布遇到错误。我们无法确定错误的原因。检查输出日志以获取更多详细信息。诊断......
  • 2024.2.22 LGJ Round
    A你需要求\(n\timesm\)格子里随机撒\(k\)个点,期望扫多少次使得相邻的格子没有同时有点。\(n\timesm\le80,k\le20\)。直接状压求出方案数即可。B你需要维护一个数组,支持区间求和或执行覆盖操作fori:=ltordoa[i]:=a[i-k]或区间回溯成一开始的数。可持久化平衡......
  • 2.21+2.22考试总结
    连续两天数组开小,\(D1T1\30+D2T2\60+D2T4\10\),一旦数组开大就\(A\)了\(qwq\)。Day1T1排序题目大意:给出一个长度为\(4n\)的序列\(a\),要求将其配对为\(n\)个四元组\(x_i,y_i,z_i,w_i\),求\(\max\sum\limits_{i=1}^n|x_iy_i-z_iw_i|\)。难度:三星(满分十星)发现绝......
  • 闲话222
    今天是222欸......
  • 2024/2/22 还是要记录才算学了
    什么是Cmake?打个比喻,小明在路边卖煎饼赚了300万准备买房,但是小明这一麻袋的5毛、一块、十块、五十、一百售楼处的小姐姐嫌麻烦不想收这些钱,那怎么办呢?小姐姐建议小明把钱拿到银行去换成一张银行卡,然后直接来刷卡就行啦!CMake这里就扮演银行的角色。MinGW提供了一套简单方便的Win......
  • 龙哥盟 Python 译文集 2024.2 更新
    每个程序员都应该知道的40个算法Python数学应用Python入门指南Python物联网入门指南Python比特币编程实用指南Python密码学实用指南Python数据结构和算法实用指南Python企业自动化实用指南PythonGPU编程实用指南Python物联网项目LearningScrapy中文版通......
  • Feb 22
    快开学了,我好害怕。不是因为寒假没好好学,是因为想想现在的503的氛围就感觉压抑(因为我是个崇尚闲适和自由的人,也可能因为我这个人本身就不是很合群)。我还甚至为此考虑要不要去普通班呆着,已经做好玩一个学期的准备了。话说滚回来已经有三个月了,再有三个月高二就没了,谁知道高三能......