[백준/C++] 1427 - 소트인사이드

정승우·2021년 2월 24일
0

[백준/C++] BOJ 공부

목록 보기
17/25

문제링크: https://www.acmicpc.net/problem/1427

문제


배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.

입력


첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.

출력


첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.

풀이


#include <iostream>
#include <algorithm>
#include <vector>
#include <string>

int main() {
	std::ios::sync_with_stdio(false);
	std::cout.tie(NULL);
	std::cin.tie(NULL);

	std::string s; std::cin >> s;
	std::vector<char> v;

	for (int i = 0; i < s.length(); i++) {
		v.push_back(s[i]);
	}

	std::sort(v.begin(), v.end(), std::greater<>());

	for (int i = 0; i < s.length(); i++) {
		std::cout << v[i];
	}
	std::cout << "\n";

	return 0;
}

std::greater<>()로 내림차순 정렬만 할 줄 알면 풀리는 문제이다.

노트


정렬 문제를 풀려고 하나 고른건데 너무 쉬운 문제를 고른 것 같다.
std::greater<>()를 까먹지 말고 기억하자.

profile
Computer Science & Engineering 19

0개의 댓글