post-thumbnail

[프로그래머스] 뒤에 있는 큰 수 찾기 (파이썬)

출처: 뒤에 있는 큰 수 찾기 https://school.programmers.co.kr/learn/courses/30/lessons/154539 접근 방법스택을 사용하여 이중루프를 제거하는 방식LIFO라 이중루프를 사용할 필요가 없음, 새로운 숫자를 스택의

2025년 2월 23일
·
0개의 댓글
·
post-thumbnail

[프로그래머스] 구명보트 (파이썬)

출처: 프로그래머스 구명보트 접근 방법그리디 문제이다. 투포인트를 사용하여 s,e를 조절하여 조건에 맞는 값을 찾아준다.배열을 정렬해주고, 합이 더 크면 e를 줄여 합을 줄여준다.반대의 경우에는 s를 증가시키고 e를 줄여 다음 경우의 수를 찾아준다.s와 e가 같아지는

2023년 3월 2일
·
0개의 댓글
·
post-thumbnail

[백준] 1025번 : 제곱수 찾기 (파이썬)

접근 방법 행의 공차를 구해야 한다. (행의 시작 위치를 지정해야 함)열의 공차를 구해야 한다. (열의 시작 위치를 지정해야 함)완전제곱수를 구하고, 해당 제곱수가 최대인지 판별해야 한다.행의 공차를 구하기 위해 행을 기준으로 공차를 구해주고(ex-(1,1),(1,2

2022년 12월 6일
·
0개의 댓글
·
post-thumbnail

[백준] 2346번 : 풍선 터트리기 (파이썬)

접근 방법덱의 rotate를 사용하면 쉽게 풀 수 있는 문제이다.rotate()는 양수를 인자로 넣었을 때 오른쪽 방향으로 회전, 음수를 인자로 넣었을 때 왼쪽방향으로 회전한다.popleft한 값이 양수라면 왼쪽으로 이동하는데, 이때 왼쪽 값을 한번 pop했으므로 nu

2022년 11월 1일
·
0개의 댓글
·
post-thumbnail

[백준] 11724번 : 연결 요소의 개수 (파이썬)

파이썬의 기본 재귀 깊이는 1000이라고 한다. dfs함수를 재귀적으로 호출하고 있으므로 깊이를 확장해주어야 한다. (참고: https://www.acmicpc.net/board/view/85228)접근 방법dfs 문제, 지난번에 풀었던 바이러스 문제와 유사한

2022년 8월 9일
·
0개의 댓글
·
post-thumbnail

[백준] 9020번 : 골드바흐의 추측 (파이썬)

접근 방법문제의 조건에서 두 소수의 차이가 가장 작은 것부터 출력한다고 하였으므로 n의 절반(n//2)부터 쁠마1씩 차를 줄여나가면서 구해주면 된다.에라토스테네스의 체(소수 구하기)를 사용하여 소수를 구할 때의 시간 복잡도를 줄여준다.

2022년 8월 5일
·
0개의 댓글
·
post-thumbnail

[백준] 6603번 : 로또

접근 방법itertools의 조합 모듈을 이용해주었다.리스트로 숫자들을 입력받고 첫번 째 수(k)를 pop해준다.combinations을 사용해 6개의 숫자를 인자로 갖는 조합을 구해주었다.itertools는 파이썬에서 리스트의 조합을 구해주는 유용한 라이브러리이다.p

2022년 8월 3일
·
0개의 댓글
·
post-thumbnail

[백준] 1672번 : DNA 해독 (파이썬)

접근 방법표의 내용을 딕셔너리로 선언해주고, 반복문을 통해 문자열의 길이가 1이 될 때까지 반복해준다.조건문을 통해 마지막의 두 문자열(ss)이 딕셔너리 안에 있으면 문자열에서 해당 내용을 삭제하고 딕셔너리의 get을 통해 해당 두 문자열에 해당하는 value값(dna

2022년 7월 17일
·
0개의 댓글
·
post-thumbnail

[백준] 11279번 : 최대 힙 (파이썬)

접근 방법우선순위 큐 문제이고, heapq를 사용해 구현해주었다.heapq을 사용하면 최소힙으로 구성되므로 이를 최대 값이 루트가 되는 최대힙으로 구현해주어야 한다.heappush를 사용해 튜플을 arr에 넣어주는데, 이때 최대힙을 구현하기 위해 튜플은 s를 음수로 만

2022년 7월 9일
·
0개의 댓글
·
post-thumbnail

[백준] 7795번 : 먹을 것인가 먹힐 것인가

배열로 각 값을 비교하려고 했으나 시간초과가 났다.잘못된 알고리즘이라 코드를 다시 짜주었다.접근 방법b에서 a보다 작은 값 중 가장 큰 값을 찾아야 한다. 이를 위해 이분탐색으로 문제를 풀어준다.이분탐색 풀이를 위해 배열 a, b는 내림차순으로 정렬해준다.가장 큰 값의

2022년 7월 3일
·
0개의 댓글
·
post-thumbnail

[백준] 1715번 : 카드 정렬하기 (파이썬)

우선순위 큐를 위해 heapq 모듈의 사용법을 알아야 한다.접근 방법우선순위 큐, 그리디 문제이다.문제 풀이를 위해 작은 수부터 2개씩 순차적으로 더해주어야 한다. heapq는 오름차순으로 저장되기 때문에 따로 정렬해줄 필요가 없다.(10+20)+(30+40)=1002

2022년 6월 28일
·
0개의 댓글
·
post-thumbnail

[백준] 7576번 : 토마토 (파이썬)

유사문제 2178번 미로 탐색접근 방법최소일수를 구하기 위해 BFS를 이용한다.토마토 값을 입력받고, 토마토가 있는 곳의 값을 큐에 추가해준다.while문을 통해 갈 수 있는 곳의 좌표를 큐에 저장해준다.(모든 값 탐색)좌표 안에 익지 않은 토마토가 있다면 해당 좌표의

2022년 6월 21일
·
0개의 댓글
·
post-thumbnail

[백준] 1075번 : 나누기 (파이썬)

접근 방법문자열 인덱스를 사용해 뒤의 두자리를 잘라주기 위해 문자열로 입력받는다.두자리를 자르고 00을 붙여준 후, while문을 통해 나머지가 0이 나올 때까지 f로 나누어준다.

2022년 6월 18일
·
0개의 댓글
·
post-thumbnail

[백준] 10844번 : 쉬운 계단 수 (파이썬)

접근 방법dp문제이므로 점화식을 도출해내면 된다. n=1일 때 9개, 1,2,3,⋯,9n=2일 때 17개, 10,21,23,32,34,43,45,⋯,87,89,98n=자리 수이고, 1의 자리에 오는 숫자(이하 j)가 무엇인지에 따라 앞에 올 수 있는 숫자가 달라진다.j

2022년 6월 16일
·
0개의 댓글
·
post-thumbnail

[백준] 11727번 : 2×n 타일링 2 (파이썬)

접근 방법유사 문제DP문제이므로 규칙을 찾으면 된다.n=1일 때, 1n=2일 때, 3n=3일 때, 5n=4일 때, 11이므로 dp\[n]=dp\[n-1]+dp\[n-2]\*2라는 점화식을 가짐을 알 수 있다.

2022년 6월 15일
·
0개의 댓글
·
post-thumbnail

[백준] 2309번 : 일곱 난쟁이 (파이썬)

접근 방법9명 중 7명의 난쟁이를 찾아야 하고, 7난쟁이의 키의 합이 100이므로 7명의 키의 합이 100일 때를 찾으면 된다.즉 9명의 배열의 합에서 2명의 키를 제외했을 때 100이 되는 순간을 찾으면 된다.

2022년 6월 13일
·
0개의 댓글
·
post-thumbnail

[백준] 1120번 : 문자열 (파이썬)

접근 방법 브루트포스 문제이므로 A의 길이가 B의 길이보다 작거나 같으므로 A의 길이에 맞춰서 B를 비교해주어야 한다.A를 기준으로 A의 길이만큼 B를 잘라서 비교해준다. 만약 비교결과가 다르다면 cnt를 1씩 증가해주고, 배열에 cnt값을 추가한다.배열에서 가장 작

2022년 6월 12일
·
0개의 댓글
·
post-thumbnail

[백준] 2193번 : 이친수 (파이썬)

접근 방법dp문제, 문제의 조건에 따라 길이가 2이상이면 앞 두자리는 10로 고정된다.n=2, 10n=3, 10+0,1 =>100,101n=4, 10+00,01,10 => 1000,1001,1010n=4일때, n=3 숫자(뒤에서 2자리) 2개, n=2의 1개의 숫자의

2022년 6월 11일
·
0개의 댓글
·
post-thumbnail

[백준] 2748번: 피보나치 수 2 (파이썬)

동일한 코드를 python3와 pypy3로 제출했다..ㅎ재귀로 풀면 시간초과가 발생하는 것을 알 수 있었다.접근 방법재귀를 사용하지 않고 풀어주어야 한다.n이 0과 1일 땐 각각 0과 1의 값을 가지므로 미리 dp배열에 저장해두고, 반복문을 통해 2부터 n까지 순차적으

2022년 6월 10일
·
0개의 댓글
·
post-thumbnail

[백준] 2156번 : 포도주 시식 (파이썬)

런타임에러라는 결과가 도출되었다.https://www.acmicpc.net/board/view/81147 를 참고해 수정하였다.

2022년 6월 8일
·
0개의 댓글
·