분류 전체보기

기타/코딩테스트

[Python] 백준 2782번 - 우리집엔 도서관이 있어

1. 문제정보 https://www.acmicpc.net/problem/2872 2872번: 우리집엔 도서관이 있어 상근이는 컴퓨터 공학의 일인자가 되기 위해 책을 매우 많이 구매했다. 하지만, 집에 책장이 없어서 책을 탑처럼 쌓아놓고 있다. 오늘은 오랜만에 상근이가 집에서 휴식을 취하는 날이다. 상근 www.acmicpc.net 2. 해결전략 리스트의 원소가 있을 때 적절한 수를 선택하여 최 상단으로 올리면서 몇 번만의 정렬시킬 수 있는지 묻고있다. 이런 경우에 실제 정렬을 수행하면서 결과를 구하려고 할텐데.. 이러한 방식으로는 정답을 구하기 어렵다. 이중 포문을 돌면서 결과값을 구할 수 있겠지만 n이 30만이기 때문에 30만 * 30만의 연산을 수행하면 시간 초과가 나올 것이 뻔하다. 이 문제는 최소..

기타/코딩테스트

[Python] 백준 11497번 - 통나무 건너띄기

1. 문제정보 https://www.acmicpc.net/problem/11497 11497번: 통나무 건너뛰기 남규는 통나무를 세워 놓고 건너뛰기를 좋아한다. 그래서 N개의 통나무를 원형으로 세워 놓고 뛰어놀려고 한다. 남규는 원형으로 인접한 옆 통나무로 건너뛰는데, 이때 각 인접한 통나무의 높이 www.acmicpc.net 2. 해결전략 단순히 정렬로만 해결할 수 없는 게 시작점과 끝점이 이어지면서 가장 작은 값과 가장 큰 값으로 인해 최대 레벨로 계산되기 때문이다. 시작점과 끝점의 차이를 줄이는 것이 최선의 전략으로 판단했고 정렬된 값을 하나는 좌측부터, 하나는 우측부터 채워나가면서 새로운 리스트를 만들어서 해결했다. 3. 코드 t = int(input()) for _ in range(t): n =..

카테고리 없음

[Python] 백준 18310번 - 안테나

1. 문제정보 https://www.acmicpc.net/problem/18310 18310번: 안테나 첫째 줄에 집의 수 N이 자연수로 주어진다. (1≤N≤200,000) 둘째 줄에 N채의 집에 위치가 공백을 기준으로 구분되어 1이상 100,000이하의 자연수로 주어진다. www.acmicpc.net 2. 해결전략 처음에는 얼핏 집들의 위치 값 중 평균 즈음에 안테나를 설치하면 해결이 가능할 것 같았다. 하지만 소수점의 위치가 나오는 경우도 있고 이러한 의도로 만들어진 문제가 아닐 것이라고 생각했다. 안테나가 가장 좌측에 있을 때의 거리를 구하고, 안테나의 위치를 이동하면서 계산하는 게 가장 단순한 풀이 방식일 것이다. 하지만 이중 포문으로 풀이하는 경우 최대 20만 x 20만의 연산이 발생하기 때문에..

기타/코딩테스트

[Python] 백준 11501번 - 주식

1. 문제정보 https://www.acmicpc.net/problem/11501 11501번: 주식 입력의 첫 줄에는 테스트케이스 수를 나타내는 자연수 T가 주어진다. 각 테스트케이스 별로 첫 줄에는 날의 수를 나타내는 자연수 N(2 ≤ N ≤ 1,000,000)이 주어지고, 둘째 줄에는 날 별 주가를 나타 www.acmicpc.net 2. 해결전략 리스트의 앞에서부터 탐색하면 알고리즘이 복잡해진다.. 구매한 날과 구매하지 않은 날을 구분하여 로직을 구현했었고 최가 가격을 갱신하면 구매하지 않은 날, 금액을 구매한 날과 구매한 금액으로 변환했다. 하지만 이 금액은 최고 금액이 중간에 나오는 경우 정상적으로 처리하지 못했다. 1시간 이상 해결을 못하다가 다른 분이 뒤에서 부터 리스트를 탐색하면서 쉽게 해..

lazy man
'분류 전체보기' 카테고리의 글 목록 (13 Page)