[BOJ][Pyhon] 7576 토마토
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★★☆☆문제 레벨: 골드 5문제 유형: BFS풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/7576  [코드]익은 토마토가 있는 좌표를 큐에 넣는다. 그 큐를 바탕으로 bfs를 돌린다. 익지 않은 토마토(0)가 있는데 bfs를 돌면서 dist가 닿지 않았다면(-1) -> -1 출력다 익었다면 dist 최댓값을 출력한다. from collections import dequem, n = map(int, input().split())board = [list(map(int, input().split())) for _ in range(n)]dist = [[-1] * m for _ ..
[BOJ][Python] 10779 쇠막대기
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★☆☆☆문제 레벨: 실버 2문제 유형: 스택풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/10799[코드]여는 괄호( '( ') 면 스택에 추가닫는 괄호(' )') 면 스택에서 마지막 괄호 pop 기본 입력 S에서 직전 괄호가 여는 괄호라면 -> 레이저 / 스택의 크기만큼 조각을 추가한다. 기본 입력 S에서 직전 괄호가 닫는 괄호라면 -> 한 막대기의 끝 / 막대기 남은 조각 하나를 추가한다. s = input()st, cnt = [], 0for i in range(len(s)): if s[i] == '(': # 여는 괄호 스택에 추가 st.append..
[BOJ][Python] 2178 미로 탐색
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★★☆☆문제 레벨: 실버 1문제 유형: BFS풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/2178  [배운점]dx = [1, 0, -1, 0]dy = [0, 1, 0, -1]'''(0, 0) (0, 1) (0, 2)(1, 0) (1, 1) (1, 2)(2, 0) (2, 1) (2, 2)dx를 행으로, dy를 열로 본다. ex)dx = 1, dy = 0 -> (1, 0) 남쪽으로 이동(하)>> 차례대로 하 우 상 좌 가 되는 것이다. ''' [코드]# S1_2178 미로 탐색.pyfrom collections import dequen, m = map(int, input()..
[BOJ][Python] 1926 그림
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★★☆☆문제 레벨: 실버 1문제 유형: BFS풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/1926  [배운점]while문에 조건이랑 while문 내에서 if 조건으로 break 하는 거랑 차이가 있음을 알게 됨while Q: # 이 지점에서 큐가 비어있지 않음을 보장한다. area += 1 cur = Q.popleft() # 여기서 Q가 모두 pop되어 False가 되더라도, # 바로 루프가 종료되는 것이 아니라 다음 반복의 시작까지 계속된다. while 문에서 조건이 있다면, 그 조건은 매 반복 시작 시에 확인된다.  while True: ..
[BOJ][Python] 1966 프린터 큐
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★☆☆☆문제 레벨: 실버 3문제 유형: 자료구조, 시뮬레이션, 구현, 큐풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/1966 [코드]풀이 아이디어''' 찾으려는 인덱스에 들어있는 값을 저장해둔다. 큐의 맥스 값을 저장 - 첫번째 위치 값이 같지 않으면 rotate - rotate할 때마다 찾으려는 값 인덱스 갱신 - 값이 같다면 popleft 하고 맥스 값 새로 설정 - popleft한 값이 찾으려는 값이 아닐 경우 cnt += 1 큐의 첫번째 위치에 그 값이 있으면 cnt를 출력 - 맥스 값=찾으려는 값, 찾으려는 값 위치 =..
[BOJ][Python] 10816 숫자 카드 2
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★☆☆☆문제 레벨: 실버 4문제 유형: 자료구조, 정렬, 이분탐색, 해시를 사용한 집합과 맵풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/10816 [코드]Counter 이용한 코드from collections import CounterN = int(input())card = list(map(int, input().split()))M = int(input())chk = list(map(int, input().split()))card_count = Counter(card)result = [card_count[c] for c in chk]print(' '.join(map(st..
[BOJ][Python] 2504 괄호의 값
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★★☆☆문제 레벨: 골드 5문제 유형: 스택풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/2504  [코드]s = input()st, tot = [], 0 # 스택과 결과를 저장할 변수valid = True # 입력 문자열의 유효성을 확인하기 위한 변수for i in s: if i == '(' or i == '[': # '(' 또는 '['가 입력되면 스택에 추가 st.append(i) elif i == ')': # ')'가 입력된 경우 if len(st) == 0 or '(' not in st: # 스택이 비어있거나 짝이 맞지 ..
[BOJ][Python] 4949 균형잡힌 세상
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★☆☆☆ # 어려운 문제는 아닌데, 처음 생각했던 방법의 해결책을 찾지 못해 어려움을 느낌문제 레벨: 실버 4문제 유형: 스택 풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://www.acmicpc.net/problem/4949 [코드]while True: s = input().strip('\n') if s == '.': break st, chk = [], True for i in s: if i == '(' or i == '[': st.append(i) elif i == ')': if len(st) == 0 or st[-..
[Programmers][Python] Lv.1 추억 점수
·
🚩 Coding Test/Programmers
Overview체감 난이도: ☆☆☆☆☆문제 레벨: Lv.1문제 유형: 구현풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://school.programmers.co.kr/learn/courses/30/lessons/176963 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]딕셔너리를 사용해서 딕셔너리에 해당 이름이 있으면 values 값을 더해준다.def solution(name, yearning, photo): answer, d = [], {} for i in range(len(na..
[Programmers][Python] Lv.1 명예의 전당(1)
·
🚩 Coding Test/Programmers
Overview체감 난이도: ★★★☆☆ (힙을 사용하는 방법을 몰랐음)문제 레벨: Lv.1문제 유형: 힙, 우선순위큐, 구현풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]import heapqdef solution(k, score): answer = [] min_heap = [] for s in score: heap..