[백준] 14888번 연산자 끼워넣기
사용 언어 - Python3 14888번: 연산자 끼워넣기 (실버1, DFS 백트래킹 문제) 문제 ★백트래킹 문제, 삼성 SW 역량 테스트 기출 문제★ 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 정답 DFS 백트래킹 재귀함수 조합 문제 !! 다른 분들 답중에 가장 좋다고 생각하는 풀이법으로 공부했습니다. 맨 아래에 링크를 올립니다! 1. maximum, minimum 지정 결과값을 출력할 때 결과값은 항상 -10억보다 크거나 같고, 10억보다 작거나 ..
2023. 1. 19.
[백준] 2339번 석판 자르기
사용 언어 - Python3 2339번: 석판 자르기 (골드1, DFS 백트래킹 문제) 문제 ★분할 정복 문제★ 2339번: 석판 자르기 첫 번째 줄에는 석판의 크기 N(1 ≤ N ≤ 20)이 들어온다. 다음 줄부터 N줄에 걸쳐서 석판의 상태가 입력으로 들어온다. 여기서 1은 불순물을 의미하며, 2는 보석 결정체, 0은 불순물과 보석결정체가 www.acmicpc.net 정답 석판을 자를 수 있을 때까지 분할하는 "분할 정복" 알고리즘 (백준에서 정답자의 풀이를 보고 이해했습니다) x의 start, end 범위 설정 sx, ex y의 start, end 범위 설정 sy, ey #정답 def f(sx, sy, ex, ey, hv): noise = [] #불순물 dia = 0 #보석결정체 for i in ra..
2023. 1. 18.
[백준] 15649번 N과 M(1)
사용 언어 - Python3 15649번: N과 M(1) (실버3, DFS 백트래킹 문제) 문제 ★LG CNS 21년 상반기 코테랑 유사★ 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 정답 DFS 백트래킹 재귀함수 문제 !! 15649,15450,15651,15652번은 세트로 공부 아래 백트래킹 문제 링크를 첨부합니다. (정답 풀이) [1] -> [1,2] -> [1] -> [1,3] -> [2] -> [2,1] -> [2] -> [2,2] ->.... 1. N=3, M=3을 리스트 형태로 입력받는다. ..
2023. 1. 17.