목록전체 글 (108)
1seul357
T = int(input()) for TC in range(T): str1 = input() str2 = input() N = len(str1) M = len(str2) max_num = 0 counts = [0]*N for i in range(M): for j in range(N): if str1[j] == str2[i]: counts[j] += 1 for i in range(N): if counts[i] > max_num: max_num = counts[i] print('#{} {}'.format(TC+1, max_num))
T = int(input()) for TC in range(T): str1 = input() stack = [] ans = 1 for i in range(len(str1)): if str1[i] == '(' or str1[i] == '{': stack.append(str1[i]) elif str1[i] == ')' or str1[i] == '}': if len(stack) > 0: pop = stack[-1] stack.pop(-1) if pop != '(' and str1[i] == ')': ans = 0 if pop != '{' and str1[i] == '}': ans = 0 else: ans = 0 if len(stack) != 0: ans = 0 print('#{} {}'.format(TC+1,..
T = 10 for TC in range(T): str1, str2 = input().split() stack = [] for i in range(1): stack.append(str2[0]) for j in range(1, len(str2)): if len(stack) > 0: pop = stack[-1] if pop == str2[j]: stack.pop(-1) else: stack.append(str2[j]) else: stack.append(str2[j]) print('#{} '.format(TC+1), end = '') for i in stack: print(i, end = '') print()
T = int(input()) for TC in range(T): N = int(input()) arr = [[0]*N for _ in range(N)] # 2차원 행렬 만들기 for i in range(1): # 0행, 0열은 무조건 1 for j in range(1): arr[i][j] = 1 for i in range(1, N): # 1행부터 for j in range(N): # 0열부터 arr[i][j] = arr[i-1][j-1] + arr[i-1][j] print('#{}'.format(TC+1)) for i in arr: for j in i: if j != 0: print(j, end = ' ') print() 문제 풀이 1. 문제 예시를 보고 좌상과 우상의 합을 구하는 것인줄... 하지만 ..
def dfs(now): for i in range(V+1): # 숫자가 99까지 있기 때문에 99까지 반복 if visited[i] == 0 and arr[now][i] == 1: visited[i] = 1 dfs(i) T = 10 for TC in range(10): t, N = map(int, input().split()) V = 99 # 0부터 99까지의 숫자이므로 99 arr = [[0]*(V+1) for _ in range(V+1)] # 99까지의 숫자를 사용해야 함. V로 설정하면 인덱스가 0부터 98까지 설정됨 array = list(map(int, input().split())) visited = [0]*(V+1) start = 0 # start는 항상 0 for i in range(N)..
def dfs(index, Sum): global min_num if index == N: if min_num > Sum: min_num = Sum return for i in range(N): if visited[i] != 1: visited[i] = 1 Sum += arr[index][i] index += 1 dfs(index, Sum) index -= 1 visited[i] = 0 Sum -= arr[index][i] T = int(input()) for TC in range(T): N = int(input()) arr = [list(map(int, input().split())) for _ in range(N)] visited = [0]*N min_num = 9999999 dfs(0, 0) pri..
T = int(input()) for TC in range(T): N, M = map(int, input().split()) data = list(map(int, input().split())) count = 0 while count < M: data.append(data.pop(0)) count += 1 print('#{} {}'.format(TC+1, data[0]))