当前位置: 首页 > 网络知识

[luoguP1053] 篝火晚会(贪心 + 乱搞)

时间:2026-01-29 09:38:40

传送门

假设第一个位置是1,那么枚举它的左右两边是谁,有两种情况,然后可以递推求出序列。

然后可以贪心,两个序列有多少个不同的数,答案就是多少,具体为啥,yy一下即可

然后就是判断递推求出的序列和目标序列最少有多少个不同,也就是最大有多少个相同

因为是环,得破环为链,然后再判断的话是 n^2 的,显然超时。

另一个思路,就是不用破环为链,随便找一个节点为起点

看看每个位置的数到目标位置向左移的距离x,f[x]++

如果两个数到目标位置的距离相同,那么选其中一个数到目标位置后,另一个数也能到目标位置,多个数同理

这样我们就找最大的f[x]即可,nf[x]为答案

#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define N 60001using namespace std;int n, ans;int f[N], a[N], X[N], Y[N];inline int read()inline void work()else a[i + 1] = a[i  1] ^ X[a[i]] ^ Y[a[i]];if(a[n] != X[1] || a[n  1] ^ X[a[n]] ^ Y[a[n]] ^ a[1])for(i = 1; i <= n; i++)f[((i  a[i]) % n + n) % n]++;for(i = 0; i < n; i++)ans = max(ans, f[i]);}int main()work();swap(X[1], Y[1]);work();printf("%d\n", n  ans);return 0;}

  



上一篇:[luoguP3413] SAC#1 - 萌数(数位DP)
下一篇:[luoguP2331] [SCOI2005]最大子矩阵(DP)
贪心 思维
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素