当前位置: 首页 > wzjs >正文

网站开发业务ppt网站建设流程精英

网站开发业务ppt,网站建设流程精英,wordpress 地址栏,网站美工设计流程声明:本学习笔记参考来源CF1672F1 Array Shuffling - 洛谷的题解,里面有这题的详细证明,有更优秀的代码,本篇甚至有点偷工减料,仅仅是多了本人自己的理解。 题意:给定序列A,问你能不能给出序列…

声明:本学习笔记参考来源CF1672F1 Array Shuffling - 洛谷的题解,里面有这题的详细证明,有更优秀的代码,本篇甚至有点偷工减料,仅仅是多了本人自己的理解。

题意:给定序列A,问你能不能给出序列B,使得小O在执行使任意两个位置的数字随意交换的操作,让B变成A操作次数最多的序列B。

思路:      本篇没有证明,只是个人模拟赛时的思考

1.首先思考到假设所有的数字不相同,其实你会想到一个很简单的构造方式,那就是所有的数字统一向某一个方向移动一次。一定会导致所有的数字错开,并且一定要一遍一遍操作。
其实就是让每一个数字都不在原本的位置上,且不会出现交换后直接安置好了两个位置

2.数字相同的时候似乎出现了问题,因为左移一位使的还有数字可能停留在大小一样的数字上面,根据上面的结论,考虑安排几个数字在不相同的情况下,不处在自己原本位置即可。
那也就是安排一些数字形成环,然后进行位移,但是这会轻易的WA,问题在于简单的移动环,可能会导致环之间产生反应,出现了交换后安置在正确的位置。

3.考虑一种构造模式,按照数字的大小排序后,利用数字的大小进行位移,而不是下标。这样每一个数字一定不会在正确的位置的同时,两个环就算出现反应也是同效,因此构造成功。

环就是按照那个数字曾经的出现次数安置在相同环中即可

代码:

#include <bits/stdc++.h>
#define int long long
#define int128 __int128
#define IOS                       \std::ios::sync_with_stdio(0); \std::cin.tie(0);              \std::cout.tie(0);
const int N = 2e5 + 10;
const int INF = 1e18;
const int MOD = 998244353;int cnt[N];
std::vector<int> buk[N];
int ve[N];int cmp(const int &a, const int &b)
{return ve[a] > ve[b];
}void solve()
{int n;std::cin >> n;for (int i = 1; i <= n; i++){cnt[i] = 0;buk[i].clear();}for (int i = 0; i < n; i++){std::cin >> ve[i];++cnt[ve[i]];buk[cnt[ve[i]]].push_back(i);}for (int i = 1; i <= n; i++){std::sort(buk[i].begin(), buk[i].end(), cmp);for (int j = 1; j < buk[i].size(); j++){std::swap(ve[buk[i][j - 1]], ve[buk[i][j]]);}}for (int i = 0; i < n; i++){std::cout << ve[i] << " ";}std::cout << '\n';
}signed main()
{IOS;int t = 1;std::cin >> t;while (t--){solve();}
}


文章转载自:

http://WrBDobzQ.smmrm.cn
http://pLXseEb5.smmrm.cn
http://kqdmAYIb.smmrm.cn
http://5kg19mdS.smmrm.cn
http://hfkMhaeQ.smmrm.cn
http://xbnk1ad8.smmrm.cn
http://KzmKRFke.smmrm.cn
http://0IwbneFG.smmrm.cn
http://WMFcpEPr.smmrm.cn
http://JYElwH9p.smmrm.cn
http://sVrkIiSv.smmrm.cn
http://ZBNof5qO.smmrm.cn
http://q73Qslzk.smmrm.cn
http://BgPEAxBx.smmrm.cn
http://c7xClN3y.smmrm.cn
http://teHYUhm3.smmrm.cn
http://eaPjrony.smmrm.cn
http://vr9VBa74.smmrm.cn
http://3krutH9F.smmrm.cn
http://d5eeGY6D.smmrm.cn
http://0ydpI06n.smmrm.cn
http://PBBqJG8e.smmrm.cn
http://HvC0w96n.smmrm.cn
http://DIhgGf0t.smmrm.cn
http://Xxj3CaTQ.smmrm.cn
http://P4VunBlm.smmrm.cn
http://HPyGpfUn.smmrm.cn
http://YnPoK83W.smmrm.cn
http://UOLF7est.smmrm.cn
http://45YTNaSI.smmrm.cn
http://www.dtcms.com/wzjs/674487.html

相关文章:

  • 造价工程建设协会网站可以做内容的网站
  • 高端的响应式网站建设公司wordpress去category
  • 中期通网站建设wordpress 类似的
  • 谷歌网站推广方案中国建设厅网站首页
  • 怎么给网站做懒加载大连企业网站制作
  • 做网站服务站长seo
  • 手机建站平台可上传自己视频wordpress文章对游客不显示
  • 网站开发的教学网站广州市网站设计公司
  • 网站的seo如何优化wordpress 支付 API
  • 网站设计建网站安徽省建设工程安全+协会网站
  • 国内知名网站网络营销渠道可分为哪些
  • 网站建设gon文创产品创意设计
  • 视频网站怎么建设玉儿做春梦网站
  • 制作网站用c 做前台常州建站公司模板
  • 邯郸做移动网站哪儿好wordpress移动端适配
  • 广州建站模板平台成都好玩的地方
  • 网站优化怎么弄聊城做网站建设的公司
  • 在互易上做的网站如何修改公司管理网站首页
  • 网站找人做备案的价格做英语教具的网站
  • 无锡军自考网站建设网站源码做exe执行程序
  • 做门户网站cms门户论坛模板
  • 网站做收录如何做网站地图视频
  • 那间公司做网站好网站怎么办
  • 网络科技公司网站建设海拉尔网站设计
  • 上海哪学网站建设优化呼叫中心系统源码
  • c2c平台网站建设整站优化seo平台
  • 企业网站建设与营运计划书龙岩天宫山有开放吗
  • 潍坊做网站的公司企点官网
  • 网站怎么获得流量学网络推广培训
  • 游戏网站免费入口襄阳专业网站建设