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

做网站的请示seo学校培训班

做网站的请示,seo学校培训班,公司网站制作开发公司,wordpress 微信 支付修改数组 原题目链接 题目描述 给定一个长度为 N 的数组 A [A1, A2, …, AN],数组中可能包含重复的整数。 现在小明要按以下方法将其修改为没有重复整数的数组: 小明会依次修改 A2, A3, …, AN。 当修改 Ai 时,小明会检查 Ai 是否在 A…

修改数组

原题目链接

题目描述

给定一个长度为 N 的数组 A = [A1, A2, …, AN],数组中可能包含重复的整数。

现在小明要按以下方法将其修改为没有重复整数的数组:

小明会依次修改 A2, A3, …, AN。

当修改 Ai 时,小明会检查 Ai 是否在 A1 ∼ Ai−1 中出现过。

  • 如果出现过,则小明会给 Ai 加上 1;
  • 如果新的 Ai 仍然在之前出现过,小明会持续给 Ai 加 1,直到 Ai 没有在 A1 ∼ Ai−1 中出现过。

当 AN 也经过上述修改之后,数组 A 中将不再有重复的整数。

现在给定初始的数组 A,请你计算出最终的数组 A。


输入描述

  • 第一行包含一个整数 N
  • 第二行包含 N 个整数 A1, A2, …, AN。

其中:

  • 1 ≤ N ≤ 10^5
  • 1 ≤ Ai ≤ 10^6

输出描述

输出 N 个整数,依次是最终的 A1, A2, …, AN。


输入输出样例

输入

5
2 1 1 3 4

输出

2 1 3 4 5

c++代码

#include<bits/stdc++.h>using namespace std;vector<int> mp(1000001);int myfind(int x) {int root = x;while(root != mp[root]) root = mp[root];int i = x, j;while(i != root) j = mp[i], mp[i] = root, i = j;return root;
}int main() {int N, a;cin >> N;for (int i = 1; i <= 1000000; i++) mp[i] = i;for (int i = 0; i < N; i++) {cin >> a;int k = myfind(a);cout << k;if (i != N - 1) cout << " ";mp[k] = k + 1;}return 0;
}//by wqs
http://www.dtcms.com/wzjs/2435.html

相关文章:

  • 网站视频外链怎么做好看的网站ui
  • 安徽网站建设哪家有赛雷猴是什么意思
  • 建设工程网站有哪些好的建站网站
  • 东莞服装网站建设手机怎么搭建网站
  • 专门做淘宝收藏可以赚钱的网站百度推广托管公司
  • 李可做的网站中国十大企业培训机构排名
  • wordpress去除下一页域名seo站长工具
  • 做网站所需要的代码外贸平台哪个网站最好
  • dw建设网站关键词优化推广排名软件
  • 线上托管国内seo公司
  • 湖南网站建设游戏挂机赚钱一小时20
  • 旅游网站建设的意义西安seo关键词推广
  • 建设网站学什么条件seo网站优化培训
  • 极简资讯网站开发制作网站需要多少费用
  • 做网站的软件初中生免费长尾词挖掘工具
  • 济南网站建设建站sem优化服务公司
  • 张槎网站制作百度一下就知道手机版
  • 网络运营商远端无响应怎么解决南京seo网络优化公司
  • 手表电商网站无锡做网站的公司
  • 医院做网站需要去备案哪里有培训网
  • 上海免费做网站如何进行搜索引擎营销
  • 购物网站含有哪些模块搜索引擎优化岗位
  • 杭州营销网站建设公司微信朋友圈广告推广
  • 西安维护网站广告关键词有哪些类型
  • 网站建设优化服务熊掌号泉州百度搜索推广
  • 我想建设网站网站建设的一般步骤
  • 做电商网站货源网站制作的重要性及步骤详解
  • php做的网站预览推广引流平台app大全
  • 西宁高端网站开发公司soe搜索优化
  • 做网站开发要学多久西安seo关键词排名