티스토리 뷰
문제는 위와 같으며 기본적으로 제공되는 sort() 를 역순으로 정렬하도록 사용하여 문제를 해결하였습니다.
파이썬 코드는 다음과 같습니다.
from sys import stdin
nums = list(map(int, stdin.readline().strip()))
nums.sort(reverse=True)
print("".join(str(i) for i in nums))
자바 코드는 다음과 같습니다. 자바의 경우 reverse 배열을 만들 때 형변환 등 다소 복잡한 로직이 있어 우선 sort 하고 반대로 출력하는 방식을 사용하였습니다.
import java.io.*;
import java.util.Arrays;
class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] inputs = br.readLine().split("");
int[] nums = new int[inputs.length];
for (int i = 0; i < inputs.length; i++) {
nums[i] = Integer.parseInt(inputs[i]);
}
Arrays.sort(nums);
for (int i = (nums.length - 1); i >= 0; i--) {
System.out.print(nums[i]);
}
}
}
또 다른 해결 방법으로는 0~9 까지 수를 거꾸로 돌면서 주어진 숫자에 포함이 되어있는지 확인하여 출력하는 방식이 있습니다.
파이썬 코드는 다음과 같습니다.
from sys import stdin
nums = list(map(int, stdin.readline().strip()))
for i in range(9, -1, -1):
for n in nums:
if n == i:
print(i, end="")
자바 코드는 다음과 같습니다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
public class BJAlgo_1427 {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int[] nums = Arrays.stream(br.readLine().split("")).mapToInt(Integer::parseInt).toArray();
for (int i = 9; i >= 0; i--) {
for (int n : nums) {
if (i == n) {
System.out.print(i);
}
}
}
}
}
이 문제의 경우 숫자보다 자리수에 초점을 맞춰 생각하고 문제에 접근하는 것이 더 쉬운 것 같습니다.
'알고리즘' 카테고리의 다른 글
[알고리즘 / 백준] 11650 - 좌표 정렬하기 (0) | 2020.11.10 |
---|---|
[알고리즘 / 백준] 10814 - 나이순 정렬 (0) | 2020.11.10 |
[알고리즘 / 백준] 2750 - 수 정렬하기 (0) | 2020.11.09 |
[알고리즘 / 백준] 4195 - 친구 네트워크 (0) | 2020.11.08 |
[알고리즘 / 백준] 1920 - 수 찾기 (0) | 2020.11.08 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- spring
- 수학
- CodeDeploy
- ionic
- array
- search
- Dynamic Programming
- permutation
- AWS
- cloudfront
- EC2
- CodePipeline
- CodeCommit
- 순열
- 에라토스테네스의 체
- programmers
- BFS
- Baekjoon
- ECR
- SWIFT
- 조합
- DFS
- map
- Combination
- sort
- 프로그래머스
- Algorithm
- java
- string
- 소수
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함