일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- aop proxy
- api 아이템 리더
- 아이템 리더 페이징 처리
- 스프링배치 csv
- JSONObject 분할
- abstractpagingitemreader
- 마이바티스 트랜잭션
- flatfileitemwriter
- executioncontext 변수 공유
- step 값 공유
- 스프링배치 메타테이블
- stepexecutionlistener
- 트랜잭션 분리
- 선언적 트랜잭션 관리
- Spring Batch
- JSON 분리
- executioncontext
- 스프링 배치 5
- spring batch 변수 공유
- 아이템 리더 커스텀
- JSONArray 분할
- mybatis
- step 사이 변수 공유
- job parameter
- step 여러개
- 스프링 트랜잭션 관리
- 읽기 작업과 쓰기 작업 분리
- JSON 분할
- 스프링배치 엑셀
- spring batch 5
- Today
- Total
목록ALGORITHM STUDY WITH PYTHON/DP (10)
ebson
1. dp 배열을 대나무숲 그래프의 크기만큼의 -1으로 초기화 2. dfs 함수를 다음과 같이 정의 2.1. y, x좌표를 인자로 받고 dp[y][x]값이 -1이면 0으로 갱신 후 아래를 수행 2.1.1. 상하좌우 좌표에 대해 유효한 좌표인지 검사하고 현재 좌표값보다 더 큰 값이면 dp[y][x]에서 dfs[ny][nx]값과 dp[y][x]값 중 더 큰값으로 갱신 2.2. dp[y][x]+1한 값을 반환 3. 대나무숲의 모든 좌표를 순회하면서 dfs(y, x)한 값의 최대값을 저장하고 출력 N = int(input()) graph = [list(map(int, input().split())) for _ in range(N)] dy = (-1, 1, 0, 0) dx = (0, 0, -1, 1) import..
dfs + dp 1. 그래프와 동일한 크기로 dp테이블을 -1으로 초기화 2. dfs 내부에서 dp 테이블에 저장된 좌표면 저장된 값을 반환 3. 맨 오른쪽 맨 아래 좌표이면 1을 반환 4. 2, 3에 해당하지 않으면 처음 방문하는 좌표이므로 dp 테이블에 0을 저장 5. 상하좌우 검사해 현재 좌표에 저장된 값보다 작으면 dfs에 해당좌표를 인자로 재귀호출한 결과를 dp 테이블에 저장 6. dfs에 전달된 좌표에 해당하는 dp테이블 값을 반환 M, N = map(int, input().split()) graph = [list(map(int, input().split())) for _ in range(M)] dp = [[-1]*N for _ in range(M)] import sys sys.setrecur..