목록ALGORITHM (82)
정구리의 우주정복
https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 문제 세계는 균형이 잘 잡혀있어야 한다. 양과 음, 빛과 어둠 그리고 왼쪽 괄호와 오른쪽 괄호처럼 말이다. 정민이의 임무는 어떤 문자열이 주어졌을 때, 괄호들의 균형이 잘 맞춰져 있는지 판단 www.acmicpc.net 괄호 문제와 거의 동일하다 ! match ={')':'(',']':'['} while True: string = str(input()) stack = [] check = 0 if string =='.': break for word in string: if word in '[(': stack.append(word) elif word in match: if len(stack) ==0: print('n..
https://www.acmicpc.net/problem/9012 9012번: 괄호 문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)�� www.acmicpc.net testCase = int(input()) for _ in range(testCase): stack = [] vps = input() check = 0 for c in vps: if c =='(': stack.append(c) elif c ==')': if len(stack) ==0: print('NO') check = 1 break else: stack.pop(..
https://www.acmicpc.net/problem/10773 10773번: 제로 문제 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 �� www.acmicpc.net stack = [] testCase = int(input()) for i in range(testCase): num = int(input()) if num ==0: stack.pop(-1) else: stack.append(num) print(sum(stack)) 0인지 아닌지 체크해서 0 이면 pop 0이 아니면 append 를 해주면 되는 아주 간단한 문제 ~
https://programmers.co.kr/learn/courses/30/lessons/42586?language=python3 문제 이해가 어려웠다 def solution(progresses, speeds): answer = [] while len(progresses) != 0: for i in range(len(progresses)): progresses[i] = progresses[i] + speeds[i] if progresses[0] >= 100: count = 0 while progresses[0] >= 100: count += 1 progresses.pop(0) speeds.pop(0) if len(progresses)==0: break #print(count) answer.append(..
python 소스로 공부를 해볼거임 선형 탐색이란 ? 앞에서 부터 뒤로 순차적으로 탐색을 하는 알고리즘 ! 정렬이 되어있다고 해도 앞에서부터 뒤로 탐색을 하는거라서 정렬이 된 경우와 안된경우 모두 O(n) 이다 리스트의 길이에 비례해서 소모시간이 늘어나게 된다 가장 쉬운 탐색 코드이지만 리스트의 길이가 길어질수록 비효율적인 탐색방법이다 :-) 파이썬 소스 def linear_search(L,x): i =0 while i
https://programmers.co.kr/learn/courses/30/lessons/12899 코딩테스트 연습 - 124 나라의 숫자 124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 자연수만 존재합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다. programmers.co.kr def solution(n): num_lst=['4','1','2'] #나머지들의 모임 num = '' while n > 0: namugi = n%3 #나머지 n = n//3 #몫 if namugi == 0: n -= 1 num = num_lst[namugi]+num return num 3진법을 써야지 ! 라고 생각을 했는데..
https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이�� programmers.co.kr 처음으로 도전해본 레벨 2 문제 def solution(bridge_length, weight, truck_weights): num_truck = len(truck_weights) #트럭의 총 개수 time = 0 #걸린 시간 arrive_truck = [] #도착트럭 ing_truck =[] #지금 지나고 있는 트럭 time_truck = ..
문제 : https://programmers.co.kr/learn/courses/30/lessons/12918 코딩테스트 연습 - 문자열 다루기 기본 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 이�� programmers.co.kr 풀이과정 : if 길이가 4 거나 6일때 try,except 에 넣어서 문자열이 int 로 했을때 오류가 나면 return False 아니라면 return True 를 해주는 식으로 만들었따 def solution(s): if len(s) == 4 or len(s) == 6: try: a =int(..