분할정복 2

[백준-파이썬] 5904: Moo 게임

ㅠㅠ 분할 정복....5개월 전에 스터디 문제였는데 그때 뭔가 이해는 된 것 같은데 못 풀었다.. 분할 정복 문제들은 어떻게 쪼개지는지 까지는 대충 아는 것 같은데, 그걸 어떻게 코드로 구현할지 막막하다.ㅠㅠ 그래도 풀면 나아지겠지 !?! 친구의 도움을 받아서 푼 Moo 게임 !! 문제 보러 가기 풀이 🌸 1. moo() 함수 부분!! 일단 미리 각 k일 때 moo 수열의 길이를 구해서 m_list에 저장했다. N이 10의 9승까지 된다고 했는데, 그걸 포함하는 moo 수열의 k는 30이다. (S(30)이 10의 9승보다 길게 된다.) 그래서 moo(30)을 구하면 된다. 2. N과 같거나 큰 S(k)의 길이를 찾아준다. 그럼 moo 수열의 N번째 알파벳을 찾기 위해서는 Moo수열에서 S(k)를 봐주면 ..

[백준-파이썬] 🥈실버🥈 분할 정복 문제들

나는 특히 분할 정복이 어렵다..ㅠ 많이 풀어보지 않아서 그런 것 같다... 그래서 🥈실버🥈 분할 정복 문제를 몇 개 풀어봤다. 2630. 색종이 만들기 문제 보러 가기! 정사각형 형태로 종이가 주어진다. 칸마다 파랑일 수도 있고, 하양일 수도 있다. 주어진 범위의 모든 칸이 같은 색깔이면 그만 자른다. 색이 섞여 있으면 4등분을 한다. (세로로 반, 가로로 반. 정사각형 모양으로) 파란 색 종이 개수를 저장하는 blue_cnt, 하얀 색 종이 개수를 저장하는 white_cnt를 0으로 초기화한다. divide_and_conquer함수에 시작하는 인덱스와 끝나는 인덱스, 한 변의 길이를 넣는다. divide_and_conquer 함수 주어진 범위를 쭉~ 보면서(check 함수) 다 같은 색깔이면 하양인지..

728x90