有 n 个 1 到 1000 之间的整数 (1≤n≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉。然后再按照指定的排序方式把这些数排序。

Input

第 1 行为字母 ADA 表示按照升序排序,D 表示按照降序排序。

第 2 行开始有若干个用一个空格或换行符分隔的正整数。

Output

相互之间用一个空格分隔的经去重和排序后的正整数。最后一个数后没有空格。

Examples

Input
A
20 40 32 67 40 20 89 300 400 15
Output
15 20 32 40 67 89 300 400

方法多多, 可以用flag数组记录取用与否,可以用set,可以用vector后unique_copy

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int cmp1(const void *a,const void *b){return *(int*)b-*(int*)a;}
int cmp2(const void *a,const void *b){return *(int*)a-*(int*)b;}
int main()
{
char c;
int a[],l,tmp;
int flag[]={};
scanf("%c\n",&c);
int i=,j,k;
while(scanf("%d",&tmp)!=EOF)
{
if(flag[tmp]==)
{
a[i++]=tmp;
flag[tmp]=;
}
}
if(c=='A') qsort(a,i,sizeof(a[]),cmp2);
if(c=='D') qsort(a,i,sizeof(a[]),cmp1);
for(j=;j<i-;j++) printf("%d ",a[j]);
printf("%d\n",a[j]);
return ;
}
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
bool cmp(const int a,const int b){return a>b;}
int main()
{
char c;cin>>c;
int tmp;
vector<int> v,vv;
while(cin>>tmp) v.push_back(tmp);
if(c=='D')
sort(v.begin(),v.end(),cmp);
else
sort(v.begin(),v.end());
unique_copy(v.begin(),v.end(),back_inserter(vv));
for(auto& x:vv) cout<<x<<' ';
return ;
}
 #include <iostream>
#include <algorithm>
#include <vector>
bool cmp(int i,int j)
{return (i<j);} using namespace std; int main ()
{
int b,i=;
char c;
cin>>c;
vector<int> v;
while(cin>>b)
{
v.push_back(b);
}
sort(v.begin(),v.end(),cmp); if(c=='A')
{
vector<int>::iterator it=v.begin();
cout<<*(it++);
for(;it!=v.end();it++)
{
if(*(it)==*(it-)) continue;
cout<<' '<<*(it);
}
}
if(c=='D')
{
vector<int>::iterator it=v.end()-;
cout<<*(it--);
for(;it>=v.begin();it--)
{
if(*(it)==*(it+)) continue;
cout<<' '<<*(it);
}
} return ;
}

EOJ 2844 排序去重的更多相关文章

  1. NX二次开发-C++的vector排序去重用法

    #include <algorithm> //vector排序去重 sort( BoxNum.begin(), BoxNum.end()); BoxNum.erase(unique(Box ...

  2. 利用BitMap进行大数据排序去重

    1.问题 问题提出: M(如10亿)个int整数,只有其中N个数重复出现过,读取到内存中并将重复的整数删除. 2.解决方案 问题分析: 我们肯定会先想到在计算机内存中开辟M个int整型数据数组,来on ...

  3. Linux sort 排序 去重 统计

    先写一个命令: cut -d' ' -f1 ~/.bash_history|sort -d | uniq -c|sort -nr|head 这个命令可以统计你历史上输入的命令的次数的前十条 整个命令基 ...

  4. js实现排序去重计算字符次数

    /*去重*/ var arr=[1,4,4,7,3,9,0,3,2,1,"你好","你","你好","你 "]; var ...

  5. set自动排序去重 stringstream流分割字符

    链接:https://vjudge.net/problem/UVA-10815#author=0 题意:给几段句子,按字典序筛选出单词. 题解:用C的话太麻烦,不如用自动去重并排序的set容器.有个地 ...

  6. Linux中sort和uniq关于排序去重的那些用法

    相信在Linux下对文件操作经常会用到sort和uniq命令,下面系统的介绍一下这两个命令的用法. sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出.sort命令既可以从特 ...

  7. shell不排序去重

    一条命令搞定:   awk '!a[$0]++' file 如果是第一次出现a[$0]++的值为0(假),而!a[$0]++的值就为1(真),之后就执行print $0 第二次或者两次以上的出现a[$ ...

  8. 通过bitmap对100w数字进行排序去重

    首先生成100w随机数,控制最大数 <?php $i = 0; do{ $i++; $num = rand(0, 999999); echo $num."\n"; }whil ...

  9. SqlServer中的UNION操作符在合并数据时去重的原理以及UNION运算符查询结果默认排序的问题

    本文出处:http://www.cnblogs.com/wy123/p/7884986.html 周围又有人在讨论UNION和UNION ALL,对于UNION和UNION ALL,网上说的最多的就是 ...

随机推荐

  1. 收集五款常用的HTML编辑软件

    HTML(HyperText Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言.HTML文本是由HTML命令组成的描述 ...

  2. javascript基础(完整)

    一.什么是javascript? 是一种基于对象和事件驱动(以事件驱动的方式直接对客户端的输入做出响应,无需经过服务器端)并具有安全性能的解释型脚本语言,在web应用中得到非常广泛地应用.它不需要编译 ...

  3. Android 解析XML—pull解析方式

    在Android中,常见的XML解析器分别为SAX解析器.DOM解析器和PULL解析器,其中PULL解析器小巧轻便,解析速度快,简单易用,非常适合在Android移动设备中使用,Android系统内部 ...

  4. 【VB】时间戳转日期

    DateAdd("s", TimeStamp / 1000, "1970-01-01 00:00:00")

  5. Deutsch lernen (08)

    1. empfehlen - empfahl - hat empfohlen  推荐:劝说,劝告 Können Sie mir einen guten Artz empfehlen? jemand e ...

  6. SLAM: Ubuntu14.04_Kylin安装ROS-Indigo

    参考连接:ROS-Indigo版在Ubuntu上的安装第一步: 软件源配置 1. 增加下载源(增加ubuntu版的ros数据仓库,即下载源)(通用指令适合任何版本的ros) sudo sh -c 'e ...

  7. yar 调用rpc方法

    <?php class RpcController extends Yaf_Controller_Abstract { //RPC入口 public function indexAction($ ...

  8. Model2

    Model1: Model2:

  9. Django MVC与MTV概念 Ajax、分页实现

     MVC与MTV概念 MTV与MVC(了解)        MTV模型(django):            M:模型层(models.py)            T:templates      ...

  10. Scrapy处理200-300范围之外的响应代码

    HttpErrorMiddleware 类scrapy.spidermiddlewares.httperror.HttpErrorMiddleware 过滤掉不成功(错误)的HTTP响应,以便蜘蛛不必 ...