본문 바로가기

STUDY/Python

(56)
[자료구조] 스택 stack * 스택 stack - LIFO, Last In First Out 구조 - 가장 나중에 들어온 자료가 가장 먼저 처리 - 들어갈 때 PUSH, 나올 때 POP * 스택 박스 만들기 stack=[] * PUSH 구현 stack.append(1) # 괄호안 넣고 싶은 원소 * POP 구현 stack.pop() * 전체 구현 stack = [] # push stack.append(1) stack.append(2) stack.append(3) stack # [1, 2, 3] # pop stack.pop() stack # [1, 2] stack.pop() stack # [1]
[프로그래머스] 문자열의 뒤의 n글자 [나의 풀이] def solution(my_string, n): answer = '' my_list = list(my_string) list_len = len(my_list) for s in range(list_len-n,list_len): answer += my_list[s] return answer [다른 사람 풀이] def solution(my_string, n): return my_string[-n:] 그냥 [-n:] 하면 답이 나온다.... 내 답안과 비교하면 엄청 간단하다.. ㅜㅜ
[프로그래머스] 공배수 [나의 풀이] def solution(number, n, m): answer = 0 if number%(n*m)==0: return 1 elif number%n==0 and number%m==0: return 1 else: return 0
[프로그래머스] 전화번호 목록 [나의 솔루션] def solution(phone_book): answer = [] for num in phone_book: phone_book.remove(num) for n in phone_book: if n.find(num) == -1: answer.append('True') else: answer.append('False') phone_book.append(num) if 'False' in answer: return False else: return True 테스트 결과 3개의 테스트 케이스를 통과하였다. 그러나, 제출 후 체점하기를 하니.... 완전 난리났다.. 효율성 문제에서도.. ㅜㅜㅜ [다른 사람 코드] def solution(phone_book): answer = True hash_map..
@staticmethod 란? @staticmethod 란 정적 메서드임 이 메서드를 사용하면 매개변수에 self 지정을 안해도 됨. self를 받지 않으므로 인스턴스 속성에는 접근할 수 없음. 위의 예시 코드를 보자면 @staticmethod가 적혀있는 cumsum 이라는 메서드는 self를 매개변수로 지정 안함. 따라서, 이는 보통 인스턴스 속성, 인스턴스 메서드라 필요하지 않을 경우에 사용함 쉬운 말로, cumsum 안에 있는 내용과 상관 없이 결과만 구하면 될 경우에 사용!
[프로그래머스] 겹치는 선분의 길이 파이썬 [나의 코드] def solution(lines): answer = 0 box = [line for line in lines] b_box = [] for b in box : for i in range(b[0]+1, b[1]+1): b_box.append('{0} {1}'.format(i-1,i)) bb_box = list(set(b_box)) for bb in bb_box: if b_box.count(bb)>1: answer += 1 return answer [다른 사람 코드] def solution(lines): sets = [set(range(min(l), max(l))) for l in lines] return len(sets[0] & sets[1] | sets[0] & sets[2] | sets[..
[프로그래머스] 음양 더하기 파이썬 [나의 코드] def solution(absolutes, signs): for i in range(len(signs)): if signs[i]==False: absolutes[i] = -absolutes[i] else: pass return sum(absolutes) [다른 사람 코드] def solution(absolutes, signs): return sum(absolutes if sign else -absolutes for absolutes, sign in zip(absolutes, signs))
[프로그래머스] K의 개수 파이썬 [나의 풀이] def solution(i, j, k): answer = 0 for n in range(i, j+1): if str(n).find(str(k)) != -1: answer +=int(str(n).count(str(k))) return answer 정답을 맞추기 전 코드는 def solution(i, j, k): answer = 0 for n in range(i, j+1): if str(n).find(str(k)) != -1: print(n) answer +=1 return answer 이거 였다. 위 코드로 하면 다음과 같이 테케 1번에서 틀린다. 이유는 테케 1의 11이라는 숫자에서는 1이 두번 나왔는데 나는 1을 1이 있는 숫자가 하나 있음! 이런 식으로 해서 오답이 나왔다. 이를 위해 ..

728x90