- 문제 주소: https://www.acmicpc.net/problem/2750

- solved.ac 기준 실버 5

 

2750번: 수 정렬하기

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

www.acmicpc.net

 

[5월 24일]

- 제출한 답: C++로 작성, 1984KB

- 선택 정렬 (https://ko.wikipedia.org/wiki/%EC%84%A0%ED%83%9D_%EC%A0%95%EB%A0%AC) 이용

- 결과: 정답, 시간 36ms

#include <iostream>

using namespace std;

void swap(int &a, int &b) {
	int temp;
	temp = a;
	a = b;
	b = temp;
}

void sort(int *arr, int n) {
	int min;
	for (int i = 0; i < n - 1; i++) {
		min = i;
		for (int j = i; j < n; j++) {
			if (arr[j] < arr[min]) {
				min = j;
			}
		};
		swap(arr[i], arr[min]);
	}
}

int main() {
	int n, *arr;
	cin >> n;
	arr = new int[n];
	for (int i = 0; i < n; i++) {
		cin >> arr[i];
	}
	sort(arr, n);
	for (int i = 0; i < n; i++) {
		cout << arr[i] << endl;
	}
	delete[] arr;
	return 0;
}

 

'기초쌓기 > PS' 카테고리의 다른 글

백준 1074번: Z (작성중)  (0) 2020.07.09
백준 10845번: 큐  (0) 2020.05.27
백준 10828번: 스택  (0) 2020.05.26
백준 1913번: 달팽이  (0) 2020.05.25
백준 1316번: 그룹 단어 체커  (0) 2020.05.25

+ Recent posts