[CLASS 3]백준 9095번, 9375번, 9461번, 11399번
9095번 : 1, 2, 3 더하기 아.. ㅠㅠ 이게 뭐라고 고민했을까... 종이에 써보면 바로 알 수 있는데 종이 안쓰고 머리로만 어찌 해보려다가 괜히 시간만 날렸다. dp라는 것은 바로 알 수 있고, 규칙성을 찾는 것이 중요하다. 4 이상의 수에 대해서 그 수를 1,2,3 의 합으로 만들 수 있는 모든 조합은 그 수 - 1 , 그 수 - 2, 그 수 - 3 을 만들 수 있는 경우의 수의 합이다. 그냥 간단하게 dp[i] = dp[i-1] + dp[i-2] + dp[i-3] 인 것이다! 왜냐하면, 그 수 - 1 의 모든 경우의 앞, 뒤에 +1을 해주고, 그 수 - 2 의 모든 경우의 앞 뒤에 +2를 해주고, 그 수 - 3의 모든 경우의 앞 뒤에 +3을 해주는 경우의 수 만큼이 구하려는 수의 경우의 수 ..
2021. 2. 1.
[CLASS 3]백준 2630번 - 색종이 만들기
2630번 : 색종이 만들기 기초적인 분할 정복 문제라고 할 수 있겠다. 큰 사각형부터 시작해서 조건이 맞지 않는다면 작은 사각형 4개로 나누는 과정을 반복하여 해결할 수 있다. 재귀함수로 구현할 수 있다. 내 코드: import sys input = sys.stdin.readline n = int(input()) p = [list(map(int,input().split())) for _ in range(n)] zero = 0 one = 0 def find(y,x,n): global zero,one temp = p[y][x] for ty in range(y,y+n): for tx in range(x,x+n): if temp != p[ty][tx]: find(y,x,n//2) find(y,x+n//2,n/..
2021. 1. 31.