프로그래머스 - 정수 내림차순으로 배치하기 < Level 1 >
2021. 11. 30. 15:06ㆍ알고리즘_생각하기/프로그래머스 Level 1
- 정수 내림차순으로 배치하기
문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
제한 조건- n은 1이상 8000000000 이하인 자연수입니다.
118372 | 873211 |
풀이
사용 언어 : C++
#include <string>
#include <vector>
#include <algorithm> //sort()
#include<cmath> //pow
using namespace std;
long long solution(long long n)
{
long long answer = 0;
vector<int>temp; //임시로 숫자들 잘라서 넣을 백터
while(n != 0) //숫자 자르기
{
temp.push_back(n % 10);
n /= 10;
}
sort(temp.begin(), temp.end(), greater<int>()); //정렬
for (int i = 0; i < temp.size(); i++) //10의 (temp.size() - i - 1)승
{
answer += temp[i] * pow(10, temp.size() - i - 1);
}
return answer;
}
'알고리즘_생각하기 > 프로그래머스 Level 1' 카테고리의 다른 글
프로그래머스 - 문자열 나누기 <Level 1> (0) | 2024.01.22 |
---|---|
프로그래머스 - 2016년 <Level 1> (2) | 2024.01.19 |
프로그래머스 - 이상한 문자 만들기 < Level 1 > (0) | 2021.11.30 |
프로그래머스 - 부족한 금액 계산하기 <Level 1> (0) | 2021.11.30 |
프로그래머스 - 나머지가 1이 되는 수 찾기 < Level 1 > (0) | 2021.11.29 |