[백준/Python] 10773. 제로
·
코딩테스트/BAEKJOON
1. 유형: 스택  2. 문제  3. 풀이 기본적인 스택 연산 구현 연습import sysK = int(sys.stdin.readline())stck = []for i in range(K): n = int(sys.stdin.readline()) if n == 0: if stck: stck.pop() else: continue else: stck.append(n)print(sum(stck))
[백준/ Python] 28278. 스택2
·
코딩테스트/BAEKJOON
문제 풀이 코드 기본적으로 스택 연산 사용할 줄 알면, 쉽게 풀리는 문제였다!대신, 입력 양이 너무 커지면 문제가 생기길래 이 부분에 대해 알아보니, import sys n = int(sys.stdin.readline()) 이걸 사용하면 빠르게 입력을 받을 수 있다고 한다.풀다가 영 답이 안 보이면 이렇게도 해봐야지 #N = int(input())import sysN = int(sys.stdin.readline())stack = []for i in range(N): n = sys.stdin.readline().split() # n, x = map(int, input().split(" ")) if n[0] == "1": stack.append(n[-1]) elif n[0]..
[프로그래머스/Python] 짝지어 제거하기
·
코딩테스트/프로그래머스
📌 문제유형: 스택  📌  풀이코드 # 스택에 하나씩 넣는데, 만약 맨 위에 있는 거랑 같은 거면 pop# 그냥 완전탐색.. def solution(s): answer = -1 stk = [] for i in range(len(s)): ''' 스택이 비어있으면 넣고, stk[-1] 이랑 다르면 넣고 다음 문자로 넘어가기 스택이 안 비어있고, stk[-1]이랑 같으면 pop하고 다음 문자로 넘어가기 ''' if not stk: stk.append(s[i]) continue if s[i] == stk[-1]: stk.pop() else: ..
[백준/Python] 1449번. 수리공 항승
·
코딩테스트/BAEKJOON
📌 문제유형: 탐욕법(그리디) 📌 문제링크 https://www.acmicpc.net/problem/1449 📌 풀이코드 N, L = map(int, input().split())holes = list(map(int, input().split()))covered = [0 for _ in range(len(holes))]holes.sort()count = 0for i, h in enumerate(holes): able = [(h-0.5), (h-0.5) + L] # 커버 가능한 범위 if not covered[i]: covered[i] = 1 count += 1 for j in range(i+1, len(holes)): if able..
[백준/Python] 3085. 사탕게임
·
코딩테스트/BAEKJOON
📌 문제유형: 브루트포스 📌  문제설명: 링크참조 https://www.acmicpc.net/problem/3085 📌  풀이코드 # 2:27 startdef search(): global answer # 가로, 세로로 가장 긴 연속 부분을 찾아야 함 # 1. 행 쪽 for i in range(N): cnt = 1 # 1로 시작해야 마지막까지 셀 수 있다. for j in range(N-1): if arr[i][j] == arr[i][j+1]: cnt += 1 answer = max(answer, cnt) else: # 연속을 찾아야 되는데, 중간에 끊기면..
[백준/Python] 3040. 백설 공주와 일곱 난쟁이
·
코딩테스트/BAEKJOON
🍀 문제유형: 브루트포스/ DFS 🍀  문제설명(링크참조) https://www.acmicpc.net/problem/3040🍀  풀이코드 # 방법1. DFS # 11:35 start 56 end# dfs..def dfs(i, total, result, cnt): global answer if cnt == 7: if total == 100 : answer = result return if i == 9: return # cnt = 7 이지만 100이 아니면 멈춰야 해 #i 포함 X dfs(i+1, total, result, cnt) #i 포함 O dfs(i+1, total+nums[i], result+..