首页 > 其他分享 >abc338解题报告

abc338解题报告

时间:2024-01-30 21:01:20浏览次数:30  
标签:abc338 点拨 简要 题意 报告 对于 解题 端点 表达式

A

B

C

D

简要题意

思路点拨

考虑对于相邻的两个需要旅行的元素 \((u,v)\) ,我们认为 \(u<v\) 。

如果一个桥的左端点在 \(u\) 到 \(v-1\) 之间,需要 \(n-v+u\) 的代价。反之只需要 \(v-u\) 的代价。使用差分数组维护即可。

E

简要题意

思路点拨

对于一条边 \(u,v\) 认为 \(u<v\) ,如果存在另一条边某一个端点 $ \in [u,v]$ ,另一个端点不在这个范围就会产生一个交点。容易使用主席树维护。

F

简要题意

思路点拨

考虑使用动态规划法解决。定义 \(f_{i,j}\) 表示目前在节点 \(i\) ,去过的节点集合为 \(j\) 的最短距离。转移分两类讨论:

  • 从没有去过的节点走过来,这一点容易转移。

  • 去一个已经走过的节点,发现这样转移会有环,枚举另一个起点然后走过来。

时间复杂度 \(O(n^2 2^n)\) ,全源最短路不是瓶颈。

G

简要题意

思路点拨

考虑对于一个合法表达式怎么快速计算,贡献显然可以拆分成三个部分:

  • 对于表达式的左端点,找到右边第一个 + 符号,左边的若干乘法称为左边界。

  • 对于表达式的右端点,找到左边第一个 + 符号,右边的若干乘法称为右边界。

  • 对于表达式的剩余部分的每一个 * 组成的连续段而言,容易知道是最初的表达式中是完整的。

对于这三个部分分别计算贡献,第三部分最简单。对于原表达式中的每一个 * 组成的连续段,假设其值为 \(w\) ,区间为 \(l,r\) 贡献就是选择一个左端点的方案乘上选择一个右端点的方案在乘上本身的权值。注意端点需要合法。

对于表达式的左边界,找到对于每一个左边界的值容易计算出来为 \(w\) ,假设其终止位置为 \(r\) ,我们只需要找到一个右端点配对即可。注意端点需要合法。表达式的有边界贡献类似。

时间复杂度 \(O(|S|)\) 。

标签:abc338,点拨,简要,题意,报告,对于,解题,端点,表达式
From: https://www.cnblogs.com/Diavolo/p/17997961

相关文章

  • 【专题】保险行业数字化洞察白皮书报告PDF合集分享(附原数据表)
    报告链接:https://tecdat.cn/?p=33203原文出处:拓端数据部落公众号近年来,"养老"、"三胎政策"、"医疗成本"等一系列备受关注的民生话题,使得保险服务备受瞩目,并逐渐渗透到每个人的生活中。自2020年以来,由于多种因素的影响,人们对健康的意识不断提高,这正在重新塑造中国消费者对保险的......
  • ABC338 F
    link观察到\(n\)的范围不大,考虑状压。\(dp_{i,S}\)表示在经过顶点集合状态为\(S\)的情况下,终点为\(i\)的最小步数。错误示范:考虑对于状态\(S\),直接遍历经过的顶点\(i\),枚举\(i\)的出边进行转移。#include<bits/stdc++.h>typedeflonglongLL;typedefstd::......
  • 题解 [ABC338D] Island Tour
    【洛谷博客】被降智的一道简单题。题意\(n\)个岛屿,第\(i\)座桥连接\(i\)和\(i+1\)(第\(N\)座桥连接着\(1\)和\(N\))。有一条长度为\(M\)的旅游序列\(X\),你需要按照顺序依次经过这些点,选择断掉一座桥使得旅游经过的桥最少。分析设断掉第\(i\)座桥会因为绕行增......
  • 2024年第一季度企业生成式人工智能现状调研报告
    德勤人工智能研究院在2023年10月-12月对来自全球16个国家地区、6大行业的2800名人工智能经验的高管进行采访,研究当下企业如何面对生成式人工智能(GAI)的发展,如何充分发挥其技术优势,帮助领导在人工智能、战略、投资、布局方面做出决策。79%的受访者预计GAI将在未来三年内推动......
  • 从 WebStorm 转到 VSCode!使用一周体验报告
    前言最近我的Jetbrains开源项目授权到期了,想要续订的时候发现Jetbrains提高了开源项目申请门槛,我的StarBlog项目因为名字里包含blog这个词无法申请,虽然我在github上有很多开源项目,但年底比较忙,疏于更新,一时间竟然找不到一个满足jetbrains要求(近三个月内每月都有commi......
  • ABC338D 题解
    赛时怎么连这题都不会。再不练练思维真的就连普及题都不会做了啊。Solution题目来源:ABC338D(inAtcoder|in洛谷)。不妨先考虑应该断掉哪条边。首先我们发现,仅断掉一条边并不会让两个结点不可达,只会让我们从一个结点绕更远的路到达目标结点。如果我们要从结点\(u\)前往结点......
  • ABC338 F Negative Traveling Salesman 题解
    QuestionABC338FNegativeTravelingSalesman给出一个\(N\)个点\(M\)条边的有向图,边权可能为负数,但不可能有负环每经过一条边就要加上这条边的代价求,一条路径经过所有的点,并且要求总代价最小Solution观察到\(N\le20\)自然而然想到状压因为多次经过一条边的代价是......
  • ABC338 D Island Tour 题解
    Question有\(n\)座海岛由\(n\)条桥连着,第\(i\)座桥连接第\(i\)和\(i+1\)座海岛,第\(n\)座桥连接第\(n\)和\(1\)座海盗有一条长度为\(m\)的旅游路线,第\(X_i\)表示依次到达的岛屿现在需要切断一条桥,求总旅游路线最小值Solution显然,从第\(X_{i-1}\)到\(X_......
  • ABC338 E Chords 题解
    Question一个圆上有\(2N\)个点均匀分布,给出\(N\)条线,每条线连接两个顶点问,有没有两条线相交Solution也算一个比较典的题目考虑到这种两两配对,配对中有没有交错关系的可以考虑异或哈希因为一个数异或两次等于它本身,所以我们可以用异或来实现一个“撤销”操作我们当我......
  • ABC338 题解(A-E)
    前言:F,G后续补充。A题意判断一个字符串,是否满足只有第一位为大写字母,其余为小写字母。Sol字面意思模拟即可。Code#include<bits/stdc++.h>#definelllonglong#defineN200005#defineendl"\n"#definefifirst#definesesecondusingnamespacestd;constll......