문제는 위와 같으며 이 문제의 경우 계수 정렬 알고리즘을 사용하여 해결할 수 있습니다. 계수 정렬(Counting Sort) 알고리즘을 간략하게 살펴보면 배열의 인덱스 값을 특정한 데이터의 값으로 여기는 정렬 방법입니다. 배열의 크기는 데이터를 포함할 수 있도록 설정하고 해당 인덱스의 수가 등장한 횟수를 세는 방식입니다. 이 알고리즘은 주어지는 수는 많지만 수의 범위가 제한적일 때 효율적으로 사용할 수 있습니다. 파이썬 코드를 보면 다음과 같습니다. from sys import stdin n = int(stdin.readline()) nums = [0 for _ in range(10001)] # 배열의 크기는 10001 이고, 0으로 초기화 => [0] * 10001 로 써도 됨 for _ in rang..
문제는 위와 같으며 좌표 데이터를 딕셔너리 형태로 리스트에 담아 기본으로 제공하는 sort 메소드를 통해 문제를 해결하였습니다. 파이썬 코드는 다음과 같습니다. 파이썬의 정렬 함수(sort, sorted) 는 기본적으로 앞 인덱스부터 순서대로 비교하면서 정렬하기 때문에 x 를 기준으로 정렬 후 같으면 y를 기준으로 정렬합니다. 따라서 따로 key 속성을 정의하지 않아도 됩니다. from sys import stdin n = int(stdin.readline()) position = list() for _ in range(n): x, y = map(int, stdin.readline().split()) position.append((x, y)) position.sort() # x 키를 기준으로 정렬 후 같..
문제는 위와 같으며 데이터를 튜플로 저장하고 기본 sort() 메소드를 통해 나이순을 기준으로 정렬하여 문제를 해결하였습니다. 파이썬 코드는 다음과 같습니다. from sys import stdin n = int(stdin.readline()) members = [] for i in range(n): age, name = stdin.readline().split() members.append((int(age), name)) # (나이, 이름) 튜플 타입으로 데이터를 저장 members.sort(key=lambda member: member[0]) # 나이 즉, 저장된 튜플의 0번째 데이터를 기준으로 정렬 for m in members: print(m[0], m[1]) 자바 코드는 다음과 같습니다. 자바의..
문제는 위와 같으며 기본적으로 제공되는 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) ..
문제는 위와 같으며 기본적으로 제공되는 sort() 를 사용하여 문제를 해결하였습니다. 먼저 파이썬 코드는 다음과 같습니다. from sys import stdin N = int(stdin.readline()) nums = list() for _ in range(N): nums.append(int(stdin.readline())) nums.sort() print("\n".join(str(i) for i in nums)) 자바 코드는 다음과 같습니다. import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; public class Main { public static void main(String[] a..
- Total
- Today
- Yesterday
- DFS
- 수학
- SWIFT
- Baekjoon
- 프로그래머스
- permutation
- CodeDeploy
- 순열
- 소수
- ECR
- Combination
- map
- AWS
- string
- java
- cloudfront
- spring
- CodePipeline
- Dynamic Programming
- EC2
- 에라토스테네스의 체
- array
- search
- BFS
- sort
- 조합
- ionic
- CodeCommit
- Algorithm
- programmers
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |