思维与构造篇

思维题

思维题,更多在于分析题目的性质,再结合上述的算法与数据结构进行求解

  • 不等式:
    如果考虑求最值,可能会在不等式等于处取得

  • 特殊到一般

    • 小宇:特殊地思考,对于第i位,如果\(a_i<i\),必然使其变为\(a_i=i\),否则无解,而且前i-1位都需要变化,如果\(a_i>i\),且同时a_i小于之后变化的最小值, 那么该位无需处理,为了方便解决,从后往前更好。
  • 递推思维:

  • 极限思考:

    • 2025 年中国大学生程序设计竞赛全国邀请赛(郑州)暨第七届CCPC河南省大学生程序设计竞赛 H数论函数: 一定存在一个数连通任意两个相邻的点,而不是想怎么去检验
    • A. Equal Subsequences
      :既然要构造101和010子串数量相等,极端思考,两者都为数量0的情况最好构造
  • 等效法:

    • 二进制转化:可以将连续得0,或者1等效为一个0,或者1,这样就会发现,一个字符串中的 "01" 和 "10" 子串个数是否相同只取决于这个字符串开头和结尾的字符是否相同。
  • 正难则反

  • 答案有限

    • [蓝桥杯 2025 国 A] 游戏:可以构造一种连接方式(1,n)和(n-2,n),使得仅需要2次连边就可以任意改变序列,总的答案不超过2
    • 无聊的子序列:将一个子数组,第一位看1,比它大的看1,小的看为0,当长度大于等于5,要么出现至少三个0,要么出现至少三个1,此时,必然不满足条件。

构造题

构造题与思维题类似,不过更加强调在给定的性质下得出要求的序列或者答案

F. Minimize Fixed Points:为了固定点更少,那么尽量\(p_i!=i\),而为了满足这个条件,可以将具有共同因子一类数,互相交换.

若赠魂灵我胸膛: 应该注意到的是距离之和是整数,因而需要判断\(\sqrt(n-1)\)是否为整数,也就是n-1是不是完全平方数,令\(t=\sqrt(n-1)\),那么距离的表达\(t * t(t+1)/2\),再构造就容易了

C - Manhattan Pairs:从一维的角度思考,绝对值的和直接按顺序从两端取即可,而推广的二维,依然可以进行类似的思考,将x,y同时小于中位数的点和x,y同时大于中位数的点配对,剩下的再配对,就能取得最大值

练习题

睡前床边看LIVE
小红的排列构造
小红的排列构造

posted @ 2025-09-28 17:52  归游  阅读(9)  评论(0)    收藏  举报