首页 > 其他分享 >JOI Final 2022

JOI Final 2022

时间:2023-09-23 11:59:49浏览次数:41  
标签:tag 2022 mathcal JOI 自学 Final

怎么这么难!

写 BCDE。

loj3663.「JOI 2022 Final」自学

tag:二分,贪心。

先不妨假设 \(A_i\geq B_i\)。二分,然后考虑怎么选。

发现方案一定是:如果能上课就先上课把需求填满,然后空出来的时间用来自学上课上不满的课程。

如何证明。只需要证明:

  • 不存在上课能满足需求的,需要用别的课的时间来自学。
  • 不存在上课满足不了需求的,会翘掉课去学别的科目。

对于第一个,假设自学了 \(x\) 次,相较于上满课多了 \(y\) 次自学机会。由于 \(A_i\geq B_i\),所以 \(y<x\),得不偿失。

第二个等价于一换一,调整回来不劣。

复杂度 \(\mathcal{O}(n\log V)\)。

*loj3664. 「JOI 2022 Final」选举

tag:最优性质优化 DP 状态。

假设钦定 \(S\) 集合使得在 \(S\) 里面搞到了协作者,\(T\) 里面只搞到了选票,满足 \(S\cap T=\varnothing\)。

刻画权值,显然我们会先搞协作者,时间是 \(S\) 按 \(b\) 排序后 \(\sum \dfrac{b_{S_i}}{i}\),后面之前全部堆一个地方,时间 \(\sum \dfrac{a_{T_i}}{|S|+1}\)。

按照 \(b_i\) 排序,考虑枚举 \(|S|\),那么设 \(f_{i,j,k}\) 表示前 \(i\) 个选了 \(j\) 个 \(S\) 和 \(k\) 个 \(T\),直接 DP 总复杂度为 \(\mathcal{O}(n^4)\)。

发现不存在 \(j\) 还没到 \(|S|\) 的时候两个都不选这种决策,所以可以设 \(f_{i,j}\) 表示选了 \(j(j<|S|)\) 个 \(S\),\(g_{i,j}\) 表示选了 \(j\) 个 \(T\) 且 \(S\) 已经选完。复杂度为 \(\mathcal{O}(n^3)\)。

*loj3665. 「JOI 2022 Final」铁路旅行 2

tag:倍增。

以为是什么高妙数据结构,然后做了好久。

题意等价于点向区间连有向边,求两点最短路。考虑倍增,倍增的同时维护 \(s\) 对应的区间。可以发现走 \(2^{j+1}\) 的区间为走 \(2^j\) 步的每一个位置走 \(2^j\) 步的区间的并,线段树维护就可以了。复杂度 \(\mathcal{O}(n\log^2 n)\)。

*loj3666. 「JOI 2022 Final」沙堡 2

tag:图形态判断条件,前缀和。

考虑一种判断方法:把一个位置 \(x\) 向它四周的比它小的最大的位置连边,然后判断图是否为一条链。

这个判断条件直接套用数据结构优化是不能的。考虑进一步转化。然后就可以发现条件等价于入度为 \(0\) 的点至多一个,而一个点的入度只和周围 \(5\times 5\) 的选择情况有关,所以对于一个矩形可以用前缀和分类快速计算入度为 \(0\) 的点的个数。

回到原题。\(\log\) 做法还是不行,但是发现可以 \(\mathcal{O}(H^2W)\),然后就可以发现直接大力做是根号的了……

所以如果需要判断图的形态,条件一般是简洁的。

标签:tag,2022,mathcal,JOI,自学,Final
From: https://www.cnblogs.com/yllcm/p/17724092.html

相关文章

  • P8867 [NOIP2022] 建造军营
    这道题想了很久,终于想出来了,非常抽象。经过一番无脑推导,我们发现u里面有没有军营,是否与根连通,u的子树有没有军营,……都对方案数有影响,然后我就一直修修改改,事实证明,当发现越来越多题目条件中被忽略的细节时,一定不要嫌麻烦,要从头开始设置状态。首先我们发现,子树中有没有军营对于......
  • [CSP-S 2022 T1] 假期计划
    #include<cstdio>#include<vector>#include<queue>#include<algorithm>usingnamespacestd;typedeflonglongLL;constintN=2505;vector<int>G[N];intdis[N],top3[N][3];boolvis[N],ok[N][N];LLs[N];intmain(){......
  • 春秋云镜 - CVE-2022-28060
    VictorCMSv1.0/includes/login.php存在sql注入找到页面的登录框,看介绍应该是post类型的表单注入。上sqlmap用原本的梭发现ctf的那个表是空的,换用--file-read参数从目标中读取文件拿到flag。root@Locklytemp/tmp»sqlmap-rsql.txt--file-read"/flag"--batch......
  • [JOI 2023 Final] Stone Arranging 2
    洛谷P9349题意一种区间覆盖操作,可以考虑直接无脑线段树,复杂度为\(O(nlog_n)\)。但是观察后发现可以开一个桶,记录这个数在序列中出现的最后一次的下标。循环扫一遍原序列,从小到大对于每一个a[i],使得下标i到m[a[i]]的区间全部覆盖为a[i]。每次覆盖一个小区间后,因为前面的区间已......
  • 春秋云镜 - CVE-2022-28512
    FantasticBlog(CMS)是一个绝对出色的博客/文章网络内容管理系统。它使您可以轻松地管理您的网站或博客,它为您提供了广泛的功能来定制您的博客以满足您的需求。它具有强大的功能,您无需接触任何代码即可启动并运行您的博客。该CMS的/single.php路径下,id参数存在一个SQL注入漏洞......
  • . Temporal table join currently only supports 'FOR SYSTEM_TIME AS OF' left table
    org.apache.flink.table.api.ValidationException:SQLvalidationfailed.Temporaltablejoincurrentlyonlysupports'FORSYSTEM_TIMEASOF'lefttable'stimeattributefield  atorg.apache.flink.table.sqlserver.utils.FormatValidatorExcept......
  • 2021-2022 ICPC Northwestern European Regional Programming Contest (NWERC 2021)
    A.AccessDenied先问若干次,问出长度,然后再一位一位的问即可。#include<bits/stdc++.h>usingnamespacestd;intinput(){strings;getline(cin,s);if(s=="ACCESSGRANTED")exit(0);intt=0;for(autoi:s){if(i&g......
  • Couchdb-权限绕过--命令执行--(CVE-2017-12635)&&(CVE-2017-12636)--H2database命令执
    Couchdb-权限绕过--命令执行--(CVE-2017-12635)&&(CVE-2017-12636)--H2database命令执行--(CVE-2022-23221)环境概述采用Vulfocus靶场环境进行复现,搭建操作和文章参考具体搭建教程参考vulfocus不能同步的解决方法/vulfocus同步失败。CouchdbCVE-2017-12635权限绕过漏洞概述A......
  • JOIN org.apache.flink.table.api.TableException: Cannot generate a valid execut
    实践:1、--enricheachorderwithcustomerinformationSELECTo.order_id,o.total,c.country,c.zipFROMOrdersASoJOINCustomersFORSYSTEM_TIMEASOFo.proc_timeAScONo.customer_id=c.id;  org.apache.flink.table.api.TableException:Canno......
  • VS2022代码格式化
    升级到vs2022后发现之前常用代码格式化插件FormatdocumentonSave不怎么好用了,经常会ctrl+s后代码并没有格式化, 这让我很不爽,查阅资料后发现vs2022内置了代码格式化功能,具体操作如下图所示: 这样既可以了。这个配置文件也是可以修改的,比如我只想要保存时格式化代码而......