재귀문제를 풀어보려고 고른건데 파이썬에는 조합을 함수로 사용할 수 있다고 그래서 사용해봤다! 주어진 리스트안에서 6개를 골라서 출력하면 되는 문제다. #첫번째 수는 k, 다음 k개의 수는 집합 S에 포함되는 수 # 입력의 마지막줄은 0 import itertools while True: num = list(map(int,input().split())) k = num.pop(0) #맨 첫번째 원소를 k로 줌 if k == 0: #입력의 마지막줄에는 0 하나만 들어옴 break # print(list(itertools.combinations(num, 6))) c = list(itertools.combinations(num,6)) for i in c: #6자리 조합 #조합의 개수만큼 반복문돌려서 출력 # pr..
T = int(input()) for tc in range(1, T + 1): str_input = list(input().split()) result = [] print('#{}'.format(tc),end=' ') for i in range(len(str_input)): if str_input[i].isdigit() == True: result.append(int(str_input[i])) if str_input[i] == '.': if len(result) != 1: print('error') break print(result.pop()) break if str_input[i] == '+' : if len(result) == 1 or len(result) == 0: print('error') bre..
T = int(input()) for tc in range(1,1+T): words = list(input()) temp = [words[0]] #일단 첫번째 문자를 받아서 temp리스트에 넣어준다 cnt = 1 #cnt는 문자를 몇개 넣었는지 temp안에 있는 개수 for i in range(1, len(words)): #인덱스 1부터 끝까지 돌면서 비교 if temp == words[i:i+cnt]: break temp.append(words[i]) cnt += 1 # print(temp) print('#{} {}'.format(tc, len(temp)))
1.열에 있는 숫자들을 받아서 거꾸로 해준다. 여기서 reverse() 내장 함수가 사용된다. 2. 그 값을 새로운 행렬의 행에 넣어준다. def func(num): new_num = [] for j in range(N): #열 중심 temp = [] for i in range(N): temp.append(num[i][j]) #temp로 한 열을 다 넣어주고 temp.reverse() new_num.append(temp) #거꾸로한것을 행으로 넣어주다 return new_num T = int(input()) for tc in range(1,T+1): N = int(input()) num = [] # 2차원 배열 받기 for i in range(N): num.append(list(map(int,input(..
T = int(input()) for tc in range(1, T+1): N = int(input()) str_input = list(map(str,input().split())) str1 = [] str2 = [] half = int(N /2 - 0.2) #N개가 짝수개이면 half중간보다 하나 전까지 str1에 저장해주고 #홀수개 이면 중간값까지 str1에 넣어준다 for i in range(N): if i half and i < N: #3 4 str2.append(str_input[i]) result = [] for i in range(N): if i%2 == 0: result.append(str1.pop(0)) elif i%2 == 1: result.append(str2.pop(0)) print..
def stack_pop(words): for i in range(len(words)-1): if words[i] == words[i+1]: j = i for j in range(j,j+2): #연속된 두개 삭제 words.pop(i) return stack_pop(words) #재귀 return len(words) T = int(input()) for tc in range(1, T+1): words = list(input()) stack_pop(words) print("#{} {}".format(tc,stack_pop(words)))
T = int(input()) for tc in range(1, T+1): arr = input() N =len(arr) stack1 = [] result = 1 left = 0 right = 0 #왼쪽괄호들을 다 스택에 저장하고 오른쪽 괄호를 만난다면 pop해서 비교 for i in range(N): if arr[i] == '(' or arr[i] == '{': stack1.append(arr[i]) left += 1 if arr[i] == ')': right += 1 if len(stack1) > 0 and stack1.pop() != '(': result = 0 break elif arr[i] == '}': right += 1 if len(stack1) > 0 and stack1.pop() != '..
1. 왼쪽 괄호들은 스택에 저장한다 2. 오른쪽 괄호들을 만난다면 스택에 저장된 것을 맨뒤에서 하나씩 pop()하면서 검사해준다. 3. 짝이 맞으면 1 아니면 0 T = 10 for tc in range(1, T+1): N = int(input()) arr = input() stack1 = [] result = 1 #왼쪽괄호들을 다 스택에 저장하고 오른쪽 괄호를 만난다면 pop해서 비교 for i in range(N): if arr[i] == '(' or arr[i] == '{' or arr[i] == '[' or arr[i] == '': if len(stack1) > 0 and stack1.pop() != '
- Total
- Today
- Yesterday
- javascript
- 알고리즘
- Java
- SSAFY퇴소
- 싸피
- vue
- 세션 스토리지
- 자바
- 독학
- django
- N과M
- splide
- vue.js
- 트리
- SWEA
- SQL
- DOM
- commit되돌리기
- git
- 비동기패턴
- Python
- AWS
- 프로그래머스
- 파이썬
- SSAFY
- 위클리챌린지2주차
- 배포
- 안드로이드스튜디오
- 백준
- Pyhton
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |