본문 바로가기

파이썬

[백준] 골드V 7576번: 토마토 (Python) 문제http://www.acmicpc.net/problem/75762차원 그리드에서 BFS를 사용하여 특정 조건을 만족하는 최소의 단계를 찾아야 하는 문제이다.모든 토마토가 익게 되는 최소 일수를 계산해보자. 풀이from collections import dequeimport sysinput = sys.stdin.readlinedx = [0, 0, 1, -1]dy = [1, -1, 0, 0]def conter(graph): count_zero = 0 for row in graph: for cell in row: if cell == 0: count_zero += 1 return count_zerodef bfs(graph): g.. 더보기
[프로그래머스] Lv.2 석유 시추 (Python) 문제 석유가 묻힌 땅과 석유 덩어리를 나타내는 2차원 정수 배열 land가 매개변수로 주어집니다. 이때 시추관 하나를 설치해 뽑을 수 있는 가장 많은 석유량을 return 하도록 solution 함수를 완성해 주세요. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각 bfs 탐색 사용해서 풀어야 하는 문제, 위, 아래, 좌, 우를 같이 확인해야 함 풀이 from collections import deque def solution(land): answer = 0 n = len(land) m = len(land[0]) dx = [0,0,1,-1] dy = .. 더보기
[프로그래머스] Lv.3 주사위 고르기 (Python) 문제 A와 B가 n개의 주사위를 가지고 승부를 합니다. 주사위의 6개 면에 각각 하나의 수가 쓰여 있으며, 주사위를 던졌을 때 각 면이 나올 확률은 동일합니다. 각 주사위는 1 ~ n의 번호를 가지고 있으며, 주사위에 쓰인 수의 구성은 모두 다릅니다. A가 먼저 n / 2개의 주사위를 가져가면 B가 남은 n / 2개의 주사위를 가져갑니다. 각각 가져간 주사위를 모두 굴린 뒤, 나온 수들을 모두 합해 점수를 계산합니다. 점수가 더 큰 쪽이 승리하며, 점수가 같다면 무승부입니다. A는 자신이 승리할 확률이 가장 높아지도록 주사위를 가져가려 합니다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세.. 더보기
[프로그래머스] Lv.1 가장 많이 받은 선물 (Python) 문제 선물을 직접 전하기 힘들 때 카카오톡 선물하기 기능을 이용해 축하 선물을 보낼 수 있습니다. 당신의 친구들이 이번 달까지 선물을 주고받은 기록을 바탕으로 다음 달에 누가 선물을 많이 받을지 예측하려고 합니다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각 해당 문제는 2024 KAKAO WINTER INTERNSHIP 코딩테스트 문제로 흥미로워서 풀게 되었다. 난이도가 낮아 쉽게 풀 수 있었다. 반복문을 사용해 풀이하였다. 선물을 주고받은 기록을 딕셔너리로 만들었는데, 문제에서 주어지는 "주는사람 받은사람" 형식을 그대로 활용하기 위해 gift.. 더보기
[프로그래머스] Lv.3 야근 지수 (Python) 문제 회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도를 최소화하도록 일할 겁니다. Demi가 1시간 동안 작업량 1만큼을 처리할 수 있다고 할 때, 퇴근까지 남은 N 시간과 각 일에 대한 작업량 works에 대해 야근 피로도를 최소화한 값을 리턴하는 함수 solution을 완성해주세요. 제한 works는 길이 1 이상, 20,000 이하인 배열입니다. works의 원소는 50000 이하인 자연수입니다. n은 1,000,000 이하인 자연수입니다. 입출력 예시 worksnresult [4, 3, 3] 4 12 [2, 1, 2] 1 6 [1,1] 3 0 풀이 .. 더보기