728x90 문자열23 [python] 백준 16637 괄호 추가하기 https://www.acmicpc.net/problem/16637 16637번: 괄호 추가하기 첫째 줄에 수식의 길이 N(1 ≤ N ≤ 19)가 주어진다. 둘째 줄에는 수식이 주어진다. 수식에 포함된 정수는 모두 0보다 크거나 같고, 9보다 작거나 같다. 문자열은 정수로 시작하고, 연산자와 정수가 www.acmicpc.net 문제 해결 괄호는 소괄호만 사용 가능 사칙연산의 순서는 무시 (곱셈 우선 하는 것 무시) 왼쪽 부터 계산하면서 한 번 계산할 때 마다 뒤에 괄호로 계산 한 것과 안한 것 두가지 경우가 있음 dfs로 뒤에 괄호가 있어서 계산 한 경우와 괄호 없어서 이어서 계산하는 경우 두 가지로 계속 나눠가며 계산 최댓값을 구하기 CODE def operator(num1, oper, num2): i.. 2023. 3. 28. [python] 백준 2661 좋은수열 https://www.acmicpc.net/problem/2661 2661번: 좋은수열 첫 번째 줄에 1, 2, 3으로만 이루어져 있는 길이가 N인 좋은 수열들 중에서 가장 작은 수를 나타내는 수열만 출력한다. 수열을 이루는 1, 2, 3들 사이에는 빈칸을 두지 않는다. www.acmicpc.net 문제해결 문자열을 잘라서 앞에 문자열과 겹치는 것이 있는지 확인하는 문제 겹치는 것이 있으면 바로 그만두고 다른 경우의 수 찾기 for문이 많아 시간복잡도 걱정이 있었다. (사실 그래서 다른 분들의 코드를 많이 참고하였다.) 백트래킹의 전형적인 문제 CODE import sys input= sys.stdin.readline n = int(input()) result = [] def check(result, c.. 2023. 3. 27. [python] 백준 12904 A와 B https://www.acmicpc.net/problem/12904 12904번: A와 B 수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수 www.acmicpc.net 문제 해결 bfs를 이용해 S에서 두 경우의 수를 이어 붙인 문자열을 다시 que에 넣어가며 T가 나올 수 있는지 찾을려고 했다. 하지만 나타날 수 있는 문자열의 경우의 수가 너무 많아 메모리 초과가 떴다. 역으로 생각하여 T에서 S로 만드는 과정을 생각했다. 경우의 수도 역으로 생각해 뒤에 'A'이면 'A'를 떼고 que에 넣고 'B'면 'B'를 떼고 문자열.. 2023. 3. 18. [python] 백준 1969 DNA https://www.acmicpc.net/problem/1969 1969번: DNA DNA란 어떤 유전물질을 구성하는 분자이다. 이 DNA는 서로 다른 4가지의 뉴클레오티드로 이루어져 있다(Adenine, Thymine, Guanine, Cytosine). 우리는 어떤 DNA의 물질을 표현할 때, 이 DNA를 이루는 뉴클레오 www.acmicpc.net 문제해결 각 자리의 알파벳을 보고 가장 많은 알파벳이 Hamming Distance이 가장 작은 DNA가 된다는 것은 쉽게 알 수 있다. 따라서 각 자리별로 가장 많은 알파벳과 그 알파벳이 아닌 것들의 개수 합을 구하면 된다. CODE n, m = map(int, input().split()) graph = [list(str(input().rstrip(.. 2023. 3. 15. 이전 1 2 3 4 5 6 다음 728x90