728x90 반응형 정렬9 [백준] 8979번: 올림픽 - java https://www.acmicpc.net/problem/8979 간만에 백준으로 다시 넘어왔다. 한동안 프로그래머스에서 풀었는데 괜찮은 것 같았다. 그러나 푸는 맛이 없어서 다시 백준으로 풀 계획이다.그나저나 java로 넘어온게 맞는 선택인가 고민이다. 물론 개발실력을 높일 순 있는데 내가 그냥 잘하는 파이썬을 할껄 그랬나.. 뭐 쨋는 문제를 봐보자. 사실 이런 정렬문제는 파이썬에서 아주 쉽게.. 아니다. 이제 자바 얘기만 하자.자바에서 푸는 방법을 모르겠어서 다른 사람들 코드를 참고했다. 우선 이런 다양한 조건이 있는 경우의 정렬은 compareTo를 상속해서 사용해야한다. 왜? 그 이유는 뭐 단순한 숫자같은 경우는 어떤게 크고 작은게 명확할 것이다. 하지만 객체에서는 여러가지 조건을 어떤 기준으로.. 2024. 9. 11. [백준] 11399번: ATM - python https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net ATM 문제를 보고 마트에서도 이렇게 하면 좋겟다 생각했다. 맨날 한 두개 사는데 하루종일 기다려서.. 코드는 그냥 정렬한 다음 순서대로 더하면 끝이다. 그리디 문제는 정렬 업그레이드 느낌인 것 같다. n = int(input()) arr = list(map(int, input().split())) arr.sort() sum = 0 for i in range(n): for j in range(i+1): sum+=arr[j] p.. 2024. 3. 25. [백준] 1026번: 보물 - python https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net a를 정렬한 뒤 b에서 가장 큰 것을 골라서 값을 구한뒤 삭제하는 방식으로 진행 기본적인 그리디 문제였다. n = int(input()) a = list(map(int, input().split())) b = list(map(int, input().split())) a.sort() cnt = 0 for i in range(n): cnt += max(b) * a[i] b.remove(max(.. 2024. 3. 25. [백준] 10825번: 국영수 - python https://www.acmicpc.net/problem/10825 10825번: 국영수 첫째 줄에 도현이네 반의 학생의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다. 점수는 1보다 크거나 같고, 1 www.acmicpc.net 기본 정렬 문제 readline안적으면 시간초과 발생 역시 파이썬 하지만 lambda를 이렇게도 사용할 수 있구나를 알아버린 문제 파이썬은 신이다. import sys input = sys.stdin.readline n = int(input()) arr = [] for i in range(n): name, kor, eng, math = input().split() arr.ap.. 2024. 3. 25. 이전 1 2 3 다음 728x90 반응형