본문 바로가기
728x90

Tests/백준24

[백준] 3012번 올바른 괄호 문자열 > 파이썬 백준 3012번 올바른 괄호 문자열 (난이도 : 中上) 출처 : 백준 3012번 올바른 괄호 문자열 나의 풀이 in Python3 # dp # 범위 [시작, 끝]을 정해놓고 분할 탐색을 하며 적절한 쌍을 이루는지 파악 # 괄호가 명시된 경우 해당 괄호랑 쌍이지만 ?라면 모든 경우 대응가능 ########### n = int(input()) s = input() cache = [[-1] * 201 for _ in range(201)] op = "({[" cl = ")}]" def f(start, end): if start > end: return 1 if cache[start][end] != -1: return cache[start][end] ret = 0 for i in range(start + 1, e.. 2021. 7. 22.
[백준] 1100번 하얀 칸 > 파이썬 백준 1100번 하얀 칸 (난이도 : 下) 출처 : 백준 1100번 하얀 칸 1100번: 하얀 칸 체스판은 8*8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램 www.acmicpc.net 나의 풀이 in Python3 # 체스판 생성 chess = [] for _ in range(8): chess.append(list(map(str,list(input())))) answer = 0 for i in range(8): for j in range(8): if (i + j) % 2 ==0: # 하얀칸 if chess[i][j] =='F': answer += 1 print(an.. 2021. 7. 20.
[백준] 5052번 전화번호 목록 > 파이썬 백준 5052번 전화번호 목록 (난이도 : 中) 출처 : 백준 5052번 전화번호 목록 5052번: 전화번호 목록 첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가 www.acmicpc.net 나의 풀이 in Python3 import sys n = int(sys.stdin.readline()) real = False for _ in range(n): n_call = int(sys.stdin.readline()) # 전화번호 목록 - 문자열 cl = list(sys.stdin.readline().rstrip() for _ in range(n_.. 2021. 7. 19.
[백준] 4673번 셀프 넘버 > 파이썬 백준 4673번 셀프 넘버 출처 : 백준 4673번 셀프 넘버 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net 나의 풀이 in Python3 natural_num = set(range(1,10001)) answer_num = set() for i in range(1,10001): # 생성자 조합 for j in str(i): i +=int(j) answer_num.add(i) # 자연수 - 생성자 수 real = natural_num - answer_num f.. 2021. 7. 18.
[백준] 8958번 OX퀴즈 > 파이썬 백준 파이썬 > 8958번 OX퀴즈 출처 : 백준 8958번 OX퀴즈 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 나의 풀이 in Python3 n = int(input()) for i in range(n): ox = input() l = list(ox) sum = 0 c =1 for k in l: if k == 'O': sum += c c +=1 else: c = 1 print(sum) OX 테스트 케이스를 리스트화 시키고, 반복문으로 "O"가 나올 때마다 sum 값에 1부터 등차수열.. 2021. 7. 18.
[BOJ] 백준 17298번 오큰수 파이썬 문제 > 백준 17289번 : 오큰수 출처 : 백준 17298번 오큰수 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net ▶ 나의 풀이 in Python3 N = int(input()) numbers = list(map(int, input().split())) stack = [];answer =[-1] * N # solution for i in range(N): while stack and numbers[stack[-1]] < numbers[i]: answer[stack.pop()] = numbers[i] stack.appen.. 2021. 5. 26.
728x90