题解 | #Simple Sorting#

Simple Sorting

https://www.nowcoder.com/practice/139761e0b59a405786898b7f2db9423f

#include <iostream>
#include <algorithm>

using namespace std;

const int MAXN = 1000 + 10;
int arr[MAXN];

int main () {
	int n;
	while(cin >> n){
		for (int i = 0; i < n; i++){
			cin >> arr[i];
		}
		sort (arr, arr + n);
		int i = 0;
		while (i < n){
			if (arr[i + 1] != arr[i]){ //后一项不等于前一项的元素直接输出
				cout << arr[i] << " ";
				i++;
			}else{
				int j = i + 1;
				cout << arr[i] << " "; //先输出重复的第一个元素
				while (arr[i] == arr[j] && j < n){ //找到重复的位置
					j++;
				}
				i = j; //找到下一个需要输出的元素
			}
		}
	}
	return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
那一天的Java_Java起来:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务