본문 바로가기

전체 글95

[python 백준 2696] 중앙값 구하기 📜 접근 방법 ❌ 실패 코드 ✅ 정답 코드 import sys import heapq import math t = int(sys.stdin.readline()) for i in range(t): arr = [] n = int(sys.stdin.readline()) if n > 10: k = math.ceil(n / 10) for i in range(k): arr += list(map(int, sys.stdin.readline().split())) else: arr = list(map(int, sys.stdin.readline().split())) m = arr[0] big = 0 small = 0 big_heap = [] small_heap = [] res = [] for j in range(n): if.. 2023. 4. 9.
[docker] 로컬에서 Docker-compose 실행해보기 보호되어 있는 글 입니다. 2023. 4. 8.
[python 백준 7662] 이중 우선순위 큐 📜 접근 방법 I n : n 삽입 D -1 : 최소값 삭제 D 1 : 최댓값 삭제 최댓값과 최솟값을 넣는 배열을 만들고 삽입 시 두 배열에 넣어주는데 인덱스와 함께 넣어준다. 또한 check_num으로 숫자를 삭제했는지 확인하는 배열로 삽입시에는 True로 변경하고 삭제시엔 False로 변경한다. -> 이렇게 하는 이유는 최솟값과 최댓값을 삭제할 시에 어떤 값을 삭제했는지 서로 모르기 때문이다. ❌ 실패 코드 삭제시에 양쪽 우선순위 큐에서 동시에 같은 값을 삭제를 하려고 해서 풀지 못했다. ✅ 정답 코드 import sys import heapq t = int(sys.stdin.readline()) for i in range(t): max_heap = [] min_heap = [] n = int(sys... 2023. 4. 8.
[python] 혼자서 하는 틱택토 📜 접근 방법 O가 이길경우 -> O의 갯수가 1개 많아야함 X가 이길 경우 -> X의 갯수와 O의 갯수가 같아야함 칸을 다 채우고 비길 경우 -> O의 갯수가 1개 많아야함 경기가 진행중일 경우 -> X의 갯수와 O의 갯수가 같거나 O의 갯수가 1개 많아야함 ❌ 실패 코드 대각선 부분 코드를 잘못 짰었음 ✅ 정답 코드 def solution(board): o_count = 0 x_count = 0 for n in board: o_count += n.count("O") x_count += n.count("X") if (o_count - x_count != 0) and (o_count - x_count != 1): return 0 # 가로 x_win = 0 o_win = 0 for n in board: i.. 2023. 4. 7.