离散化模板题 I ——重复元素离散化后的数字相同

题目描述

现有数列A1, A2, ⋯, An,数列中可能有重复元素。 
现在要求输出该数列的离散化数列,重复元素离散化后的数字相同。 

输入

第一行,一个整数 n。 
第二行,n 个整数整数A1, A2, ⋯, An。

输出

一行,包括 n 整数。表示数列对应的离散化数列,重复元素离散化后的数字相同。

样例输入

6
1 23424 242 65466 242 0

样例输出

1 3 2 4 2 0

提示

【数据范围】 
对于 50% 的数据,1 ≤N ≤ 103。 
对于 100% 的数据,1 ≤ N ≤ 105, -109 ≤ Ai≤ 109。 
代码:
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
int*arr = new int[n];
int*carr = new int[n];
for (int i = 0; i < n; i++){
cin>>arr[i];
carr[i]=arr[i];
}
sort(arr,arr+n);
int m =unique(arr,arr+n)-arr;
for (int i = 0; i < n; i++){
carr[i]=lower_bound(arr,arr+m,carr[i])-arr;
}
for (int i = 0; i < n; i++){
cout<<carr[i]<<" ";
}
}

离散化模板题 I ——重复元素离散化后的数字相同的更多相关文章

  1. 离散化模板题 II ——重复元素离散化后的数字不相同

    离散化模板题 II --重复元素离散化后的数字不相同 题目描述 现有数列A1, A2, ⋯, An,数列中可能有重复元素. 现在要求输出该数列的离散化数列,重复元素离散化后的数字不相同. 输入 第一行 ...

  2. 【python】Leetcode每日一题-存在重复元素3

    [python]Leetcode每日一题-存在重复元素3 [题目描述] 给你一个整数数组 nums 和两个整数 k 和 t .请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] ...

  3. leetcode第217.题存在重复元素

    1.题目描述 给定一个整数数组,判断是否存在重复元素. 如果任何值在数组中出现至少两次,函数返回 true.如果数组中每个元素都不相同,则返回 false. 2.示例 2.1 输入: [1,2,3,1 ...

  4. 【leetcode 简单】 第六十一题 存在重复元素

    给定一个整数数组,判断是否存在重复元素. 如果任何值在数组中出现至少两次,函数返回 true.如果数组中每个元素都不相同,则返回 false. 示例 1: 输入: [1,2,3,1] 输出: true ...

  5. 刷题——有重复元素的全排列(Permutations II)

    题目如上所示. 我的解决方法(参考了九章的答案!): class Solution { public: /* * @param : A list of integers * @return: A li ...

  6. Java中ArrayList问题:删除一个ArrayList中的重复元素,注意留意一个问题

    该问题有两种方法: 一 利用两个数组,此法简单,不讨论 二 利用一个数组,从第0个开始依次取元素,并在其后元素中查找是否有该元素,有则删掉后面的重复元素,依次遍历.---但是这种情况要特别注意,当后续 ...

  7. 【模板】 全排列 && 有重复元素的全排列

    全排列 #include<bits/stdc++.h> using namespace std; ]; void print (int n){ ;i<=n;i++) cout< ...

  8. 【python】Leetcode每日一题-删除排序链表中的重复元素

    [python]Leetcode每日一题-删除排序链表中的重复元素 [题目描述] 存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 . 返回同 ...

  9. 【python】Leetcode每日一题-删除排序链表中的重复元素2

    [python]Leetcode每日一题-删除排序链表中的重复元素2 [题目描述] 存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表 ...

随机推荐

  1. dubbo学习实践(4)之Springboot整合Dubbo及Hystrix服务熔断降级

    1. springboot整合dubbo 在provider端,添加maven引入,修改pom.xml文件 引入springboot,版本:2.3.2.RELEASE,dubbo(org.apache ...

  2. 第7篇-为Java方法创建栈帧

    在 第6篇-Java方法新栈帧的创建 介绍过局部变量表的创建,创建完成后的栈帧状态如下图所示. 各个寄存器的状态如下所示. // %rax寄存器中存储的是返回地址 rax: return addres ...

  3. MyBatis-Plus QueryWrapper及LambdaQueryWrapper的使用

    转载自 MyBatis-Plus QueryWrapper及LambdaQueryWrapper的使用 LambdaQueryWrapper https://blog.csdn.net/lt32603 ...

  4. 中文屋 Chinese room

    中文屋 Chinese room 深夜了,假装有个bgm,虽然我真的有个bgm<中间人> 强烈安利,无敌好听,冰老师yyds 开始瞎侃 在经历了机器学习的洗礼以后,感觉人都升华了,本来对于 ...

  5. WPF在圆上画出刻度线

    思路 我们可以使用Ellipse先画出一个圆当背景,然后用Canvas再叠加画上刻度线,就能得到如下的效果 我们先用Ellipse画一个橙色的圆,然后将Canvas的宽度和高度绑定到Ellipse的宽 ...

  6. NOIP 模拟 $31\; \rm Time$

    题解 \(by\;zj\varphi\) 考虑如何才能最优. 每次一定把当前最小值移动到边界上,那么看它向左还是向右移更优. 用树状数组维护一下即可,复杂度 \(\mathcal O\rm (nlog ...

  7. NOIP 模拟 $17\; \rm weight$

    题解 \(by\;zj\varphi\) 一道树剖的题 先对于原图求出一棵最小生成树,求出来的这棵树中的边定为树边,其它边叫非树边 那么对于一条非树边,它要成为最小生成树上的边,权值只能为连接它两个端 ...

  8. 题解 Medium Counting

    传送门 又是神仙DP 发现如果只有两个串就很好做了 于是这个神仙DP定义就从这里下手:令 $dp[p][c][l][r] 表示在 \([s_l, s_r]\) 这段字符串中,考虑从第 \(p\) 个位 ...

  9. SpringBoot开启异步方法

    在启动类上加入@EnableAsync 异步方法 /** * 简单文本邮件 * @param to 收件人 * @param subject 主题 * @param content 内容 */ @As ...

  10. 如果被问到 HTTP 协议,你真的能讲清楚吗?

    前段时间,在和许久未见的老同学聊天时,突然被问到 http 协议到底是什么?脑海里面第一时间想起来的就是 request 请求.response 响应之类的词汇,但是这样讲他真的能知道是什么吗?我反问 ...