Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 성능개선
- 마이바티스 트랜잭션
- JSON 분리
- 스프링 배치 메타 테이블
- ChainedTransactionManager #분산데이터베이스 #Spring Boot #MyBatis
- JobExecutionAlreadyRunningException
- JSON 분해
- git stage
- 날짜형을 문자형으로
- 스프링 웹플럭스
- spring reactive programming
- 스테이지에 올리기
- 문자형을 날짜형으로
- 폐기하기
- multi update
- org.json
- JSONArray 분할
- Meta Table
- 스프링 리액티브 프로그래밍
- batchInsert
- str_to_date
- JSONObject 분할
- date_format
- JSON 분할
- nonblocking
- 무시하기
- spring webflux
- 마리아디비
- 스프링 배치 공식문서
- jar 소스보기
Archives
- Today
- Total
ebson
boj.kr/14889 스타트와 링크 (silver2) 파이썬 풀이 본문
ALGORITHM STUDY WITH PYTHON/Bruteforce
boj.kr/14889 스타트와 링크 (silver2) 파이썬 풀이
ebson 2023. 4. 20. 17:341. combinations를 import하여 가능한 모든 조합에 대해 아래를 반복
1.1. startT과 linkT 리스트를 초기화
1.2. start_tot 과 link_tot을 저장
1.3. diff_list에 두 점수의 차를 저장
2. diff_list의 최소값을 출력
N = int(input())
board = [list(map(int, input().split())) for _ in range(N)]
nums = []
for n in range(N):
nums.append(n)
from itertools import combinations
from itertools import permutations
diff_list = []
for combi in combinations(nums, N//2):
start_tot = 0
link_tot = 0
startT = list(combi[:])
linkT = [x for x in nums if x not in startT]
for permu in permutations(startT, 2):
start_tot += board[permu[0]][permu[1]]
for permu in permutations(linkT, 2):
link_tot += board[permu[0]][permu[1]]
diff_list.append(abs(start_tot-link_tot))
print(min(diff_list))
서브리스트2 = [x for x in 메인리스트 if x not in 서브리스트1]와 같이 하여 메인리스트를 2개의 서브리스트로 분리할 수 있다.
'ALGORITHM STUDY WITH PYTHON > Bruteforce' 카테고리의 다른 글
boj.kr/1080 체스판 다시 칠하기 (silver4) 자바 풀이 (0) | 2024.06.01 |
---|---|
boj.kr/1080 체스판 다시 칠하기 (silver4) 파이썬 풀이 (0) | 2024.05.25 |
boj.kr/15686 치킨 배달 (gold5) 파이썬 풀이 (0) | 2023.04.22 |
boj.kr/2468 안전 영역 (silver1) 파이썬 풀이 (0) | 2023.04.21 |
boj.kr/14888 연산자 끼워넣기 (silver1) 파이썬 풀이 (0) | 2023.04.20 |
Comments