일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- JSON 분리
- Meta Table
- date_format
- ChainedTransactionManager #분산데이터베이스 #Spring Boot #MyBatis
- 마이바티스 트랜잭션
- 성능개선
- 폐기하기
- 문자형을 날짜형으로
- 스프링 배치 공식문서
- org.json
- JobExecutionAlreadyRunningException
- 스프링 배치 메타 테이블
- spring webflux
- nonblocking
- 무시하기
- str_to_date
- 날짜형을 문자형으로
- JSONObject 분할
- 스테이지에 올리기
- multi update
- JSONArray 분할
- jar 소스보기
- JSON 분할
- git stage
- 스프링 리액티브 프로그래밍
- batchInsert
- 스프링 웹플럭스
- 마리아디비
- spring reactive programming
- JSON 분해
- Today
- Total
목록전체 글 (197)
ebson
1. 0인 경우 0의 개수를 카운트 2. 1인 경우 출력 tot 값을 1 증감 3. 양수인 경우 양수 최대힙에 추가 4. 음수인 경우 음수 최소힙에 추가 5. 양수 최대힙의 길이가 1 이하일때 까지, heappop한 두 수를 곱해서 출력 tot 값에 추가 6. 양수 최대힙에 양수가 남은 경우 출력 tot 값에 추가 7. 음수 최소힙의 길이가 1 이하일 때까지, heappop한 두 수를 곱해서 출력 tot 값에 추가 8. 음수 최소힙에 음수가 남은 경우 , 0의 개수를 카운트하고 8.1. 0이 1개라도 있으면 출력 tot값에 0을 추가하고 8.2. 0이 1개도 없으면 음수를 출력 tot 값에 추가 9. tot 값을 출력 N = int(input()) import heapq as hq nums1 = [] #..
오답풀이 - 제시된 2개 테스트 케이스는 통과했으나 제출시 시간초과했다. import sys input = sys.stdin.readline N, K = map(int, input().split()) items = [] for _ in range(N): items.append(list(map(int, input().split()))) from collections import deque bags = deque() for _ in range(K): bags.append(int(input())) items = sorted(items, key = lambda x:x[1], reverse=True) tot = 0 for item in items: # av_bags = sorted(list(filter(lambd..
오답풀이 - 제시된 4개 테스트 케이스는 통과했으나 제출시 틀린 케이스가 있었다. N = int(input()) words = [input() for _ in range(N)] words = sorted(words, key=lambda x: len(str(x)), reverse=True) matches = [0 for _ in range(10)] pointers = [] import heapq for i in range(len(words)): heapq.heappush(pointers, (-len(words[i]), i, -len(words[i]))) mIdx = 9 while mIdx >= 0: (pointer, wIdx, len) = heapq.heappop(pointers) (pointer, wId..
1. 서류 성적 순위를 기준으로 순위 목록을 오름차순 정렬 2. cur 변수에 정렬한 순위목록의 첫번째 요소의 면접 성적 순위를 저장 3. 1 부터 성적 목록의 마지막 인덱스까지 순회하면서 아래를 반복 3.1. cur보다 순회중인 인덱스의 면접 성적 순위가 높으면(작으면) cur에 해당 면접 성적 순위를 저장하고 카운트를 1 증감 4. 카운트를 출력 import sys input = sys.stdin.readline T = int(input()) for _ in range(T): N = int(input()) ranks = [list(map(int, input().split())) for _ in range(N)] ranks = sorted(ranks, key = lambda x : x[0]) cur =..
이전의 비교횟수 목록과 남아있는 카드개수 목록 중 매번 최소값을 선택할 수 있어야 한다. 1. heapq를 import 2. N개의 card를 cards 배열에 모두 저장 3. cards 의 요소가 2개 이상이라면, cards에 요소가 하나만 남을 때가지 아래를 반복 3.1. heapq.heappop을 사용해 최소값을 두번 꺼내기 3.2. tot 변수에 두 최소값의 합을 더하기 3.3. cards에 두 최소값의 합을 heapq.heappush 하기 4. tot 변수 값을 출력 import heapq N = int(input()) cards = [] for _ in range(N): heapq.heappush(cards, int(input())) tot = 0 if N > 1: while len(cards..
1. 종료시간 기준 정렬 2. 시작시간 기준 정렬 3. 정렬한 시간목록을 순회하면서 시작시간 >= 종료시간인 경우에만 cnt를 1 증감 4. cnt 출력 N = int(input()) times = [list(map(int, input().split())) for _ in range(N)] times = sorted(times, key=lambda x : (x[1], x[0])) last_e = 0 cnt = 0 for [s, e] in times: if s >= last_e: cnt += 1 last_e = e print(cnt) 참고출처 "[백준알고리즘] 1931번: 회의실배정 -Python", suri78.tistory.com, 2019년 8월 30일 수정, 2023년 6월 14일 접속, https..
1. 첫번째 선거구의 조합을 모두 추출하고 아래를 반복 1.1. 첫번째 선거구의 조합과 그 외 나머지 선거구의 조합을 bfs, dfs 방식 중 하나로 순회해 가능한 조합인지 검사 1.2. 가능한 조합이라면 두 선거구의 인구수 차를 저장 2. 두 선거구의 인구수 차 중 최소값을 출력, 가능한 조합이 없으면 -1을 출력 N = int(input()) nums = [0] + list(map(int, input().split())) adj = [0] + [] for _ in range(N): adj.append(list(map(int, input().split()))[1:]) from collections import deque def bfs(nodes): dq = deque() dq.append(nodes[0..
dfs 방식으로 풀이 시도한 결과 테스트 케이스는 통과했지만 제출시 시간 초과 또는 메모리 초과가 발생했다. dfs 풀이(시간초과) N, M = map(int, input().split()) graph = [list(map(int, input().split())) for _ in range(N)] visited = [[False]*M for _ in range(N)] dy = (1, -1, 0, 0) dx = (0, 0, 1, -1) from collections import deque def bfs(y, x): dq = deque() dq.append((y, x)) while dq: (y, x) = dq.popleft() graph[y][x] = -2 for i in range(4): ny = y + ..