首页 > 其他分享 >Distance to Different

Distance to Different

时间:2024-08-07 16:21:29浏览次数:13  
标签:Distance Different 分段 计数 一段 单射 DP

最开始观察\(a\)没看出什么东西来,于是看\(b\),由于统计的是不同的\(b\)的数量,所以考虑一个\(b\)可以由什么\(a\)搞出来,然后就不难发现如果我们将\(a\)分段(相同的数放一段),那么对应的\(b\)在同一段就会从\(1\)开始增加,然后到达一个峰值之后再减小到\(1\)(开头和结尾的两段只有减少或增加)

此时我在赛时搞出来一个模型:在\(b\)中放若干个\(1\),满足\(1\)的个数减去\(1\)的段数(连续的\(1\)为一段)加上一不小于\(k\),而且每一段至少有两个\(1\);不难知道这是正确的,但是太难计数了

我们最开始以\(a\)为观察对象不行,现在换成\(b\)了有一点点曙光,但是发现还是太难计数,这个时候就要重新去观察\(a\),就将\(a\)分段,于是可以发现,对于\(a\)来说,不同的分段对应不同的\(b\)(也就是说这是单射),然后就可以DP计数了

但是\(b\)到\(a\)却不是单射。比如\(a=[1,2,2,3]\)和\(a=[1,2,3,1]\)对应的\(b\)都相同,但是前者分了三段,后者分了四段,这会导致重复计数

然而,这种情况只有可能在中间发生,于是我们DP计数的时候排除这种特殊情况就好了

标签:Distance,Different,分段,计数,一段,单射,DP
From: https://www.cnblogs.com/dingxingdi/p/18347243

相关文章

  • Leetcode 3244. Shortest Distance After Road Addition Queries II
    Leetcode3244.ShortestDistanceAfterRoadAdditionQueriesII1.解题思路2.代码实现题目链接:3244.ShortestDistanceAfterRoadAdditionQueriesII1.解题思路这一题的话由于题目限制了road不会交叉,因此我们只需要在每次增加road之后将中间节点删除,剩余的路......
  • 图像生成中图像质量评估指标—Chamfer Distance介绍
    文章目录1.背景介绍2.实际应用3.总结和讨论1.背景介绍ChamferDistance是一种用于度量两个集合之间相似性的方法,尤其在计算机视觉和图像处理中,它常用于比较图像或形状的二值表示。ChamferDistance基于局部邻域的概念,通过计算一个集合中每个点到另一个集合最近......
  • 每日一题- Jump Distance Sum
    https://www.luogu.com.cn/problem/AT_abc351_e*这是我的第一个随笔,请大佬们指正。数学知识:https://oi-wiki.org/geometry/distance/*曼哈顿距离:在二维空间内,两个点之间的曼哈顿距离(Manhattandistance)为它们横坐标之差的绝对值与纵坐标之差的绝对值之和。设点A(x1,y1),B(x2,......
  • P9058 [Ynoi2004] rpmtdq 与 P9678 [ICPC2022 Jinan R] Tree Distance
    思路:注意到点对数量有\(N^2\)个,考虑丢掉一些无用的点对。对于点对\((x_1,y_1),(x_2,y_2)\),满足\(x_1\lex_2<y_2\ley_1\),即区间\([x_2,y_2]\)被\([x_1,y_1]\)包含,此时满足若询问到了\([x_1,y_1]\),则一定会询问到\([x_2,y_2]\)。若满足\(\operatorname{dis}(x_1......
  • Leetcode 1334 Find the City With the Smallest Number of Neighbors at a Threshold
    Problem:FindtheCityWiththeSmallestNumberofNeighborsataThresholdDistanceTheknowledgepointsoutsideofmyskilltreeExplanationofCodeandConceptsWhatisfloat('inf')?float('inf')inPythonrepresentspositiveinfin......
  • WPF The calling thread cannot access this object because a different thread owns
      publicintImgIdx{get{returnimgIdx;}set{if(value!=imgIdx){imgIdx=value;if(imgIdx<0){imgIdx=imgsCount-1;......
  • 题解:AT_abc359_c [ABC359C] Tile Distance 2
    背景去中考了,比赛没打,来补一下题。分析这道题让我想起了这道题(连题目名称都是连着的),不过显然要简单一些。这道题显然要推一些式子。我们发现,和上面提到的那道题目一样,沿着对角线走台阶,纵坐标走到以后再走横坐标显然是最优策略。这时候的答案就是横纵坐标差的和的一半(这就不用......
  • F. Minimum Maximum Distance
    原题链接题解1.假设有一个以标记点\(c\)为根的子树,且子树内没有其他标记点,易得该子树内所有点的\(f\leqf(c)\),所以我们可以把该子树内的非标记点全部删掉2.完成步骤1之后,图就变成了所有叶子节点均为标记点的树3.题目等价于求该树内,最小的点到边界的最大值,也就是求树的直径......
  • D. Distance in Tree
    原题链接题解固定一个点作为树的根,易得任意一条链,都可以以某个点作为最高点,且链的两端到最高点之和为\(k\)那么不难想到遍历每个点作为最高点那么接下来就变成了在子树里选两个端点,使得到该点的距离之和为\(k\)这种无序点对统计,我们可以顺序遍历,然后对于每一个遍历到的点,计......
  • 机器学习策略篇:详解如何使用来自不同分布的数据,进行训练和测试(Training and testing o
    如何使用来自不同分布的数据,进行训练和测试深度学习算法对训练数据的胃口很大,当收集到足够多带标签的数据构成训练集时,算法效果最好,这导致很多团队用尽一切办法收集数据,然后把它们堆到训练集里,让训练的数据量更大,即使有些数据,甚至是大部分数据都来自和开发集、测试集不同的分布。......