목록2024/02/23 (5)
미소를뿌리는감자의 코딩
https://www.acmicpc.net/problem/2212 2212번: 센서 첫째 줄에 센서의 개수 N(1 ≤ N ≤ 10,000), 둘째 줄에 집중국의 개수 K(1 ≤ K ≤ 1000)가 주어진다. 셋째 줄에는 N개의 센서의 좌표가 한 개의 정수로 N개 주어진다. 각 좌표 사이에는 빈 칸이 하나 있 www.acmicpc.net 1. 접근 방법 이 문제는 문제 자체는 어렵지 않았다고 생각한다. 하지만, 문제를 이해하는데 시간을 많이 쓴 것 같다. 문제 해석에 모호한 부분이 있었다고 생각한다. 조금 개인적인 생각이다. 집중국이 어떤 방식으로 수신 가능 영역을 조절하는지, 집중국을 어떤 방식으로 거리를 나타내는지, 그런 설명이 필요하지 않았나... 처음에 나는 집중국에서 radius 처럼, 집중국을 ..
https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 109) www.acmicpc.net 1. 접근 방법 우선 강의 시작 시간을 기준으로 오름차순 정리를 해주었다. 이후, 저장해 놓은 이전 강의 끝나는 시간을 비교한 후, 해당 시간 보다 현재 보고 있는 강의의 시작 시간이 뒤라면, 강의실을 추가해 주지 않고, 이전에 저장해 놓은 강의 끝나는 시간을 현재 강의가 끝나는 시간으로 갱신해 주었다. heap을 이용하여, 강의가 끝나는 시간 중 최솟값을 얻을 수 있도록 하였다. 아래 예시를 통해 더 자세히 알아보자. [[1, 3], [2, ..
https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 1. 접근 방법 값이 싼 주유소에 대해서 오름차순 정리를 한 후, 처음에는 값이 싼 주유소에 대해서 뒤에 있는 거리들까지 기름을 채우고 이동하는 식으로 식을 구성했었다. 하지만, 시간초과가 났었다. 시간 초과가 난 코드는 아래와 같다. len_city = int(input()) d = list(map(int, input().split())) city = list(map(int, in..
https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 1. 접근 방법 조금 직관적인 문제였다고 생각한다. 또한 문제에서 예시를 잘 들어주어서 이해하기가 좋았다. 딱히 추가적으로 설명할 부분이 없는 것 같다. 2. 코드 def sort_wait_time(): n = int(input()) withdrawal = list(map(int, input().split())) withdrawal.sort() return withdrawal def total_wait_time(withdraw..