Algorithm/Python

Algorithm/Python

[프로그래머스] 신규 아이디 추천

https://school.programmers.co.kr/learn/courses/30/lessons/72410 - 하라는 대로 단계에 따라 작성하면 된다! 정규표현식을 사용하는 것이 좋다 import re def solution(new_id): new_id= new_id.lower() #1 new_id=re.sub(r'[^a-z0-9\-_\.]','',new_id) #2 new_id=re.sub(r'[.]{2,}','.',new_id) #3 new_id=new_id.strip('.') #4 if new_id=="": new_id="a" #5 new_id=new_id[:15].strip('.') #6 if len(new_id)

Algorithm/Python

[프로그래머스] 햄버거 만들기

https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr while문과 인덱스 슬라이싱을 사용해서 풀어봄 시간초과로 안됨!! def solution(ingredient): answer=0 idx=0 while idxlen(s): bf_len=len(s) s=s.replace("1231","",1) return (len(ingredient)-len(s))//4 스택 사용하기... def solution(ingredient): answer=0 stack=..

Algorithm/Python

[프로그래머스] 옹알이

https://school.programmers.co.kr/learn/courses/30/lessons/120956 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - replace 사용 def solution(babbling): answer = 0 for babb in babbling: babb=babb.replace('aya',' ',1) babb=babb.replace('ye',' ',1) babb=babb.replace('woo',' ',1) babb=babb.replace('ma',' ',1) if babb.replace(" ","")=='': a..

Algorithm/Python

숨어있는 숫자의 덧셈 (2)

https://school.programmers.co.kr/learn/courses/30/lessons/120864 1. 문자를 split하고 숫자만 sum import re def solution(my_string): return sum([int(x) for x in (re.split(r'[a-zA-Z]',my_string)) if x!='']) 2. sub으로 문자를 +로 바꾼후 eval => 안됨 3. 순회 돌면서 숫자인 것만 더하기 => 한 글자씩이므로 연속된 숫자일 경우 곤란

Algorithm/Python

머쓱이보다 키 큰 사람

https://school.programmers.co.kr/learn/courses/30/lessons/120585 - lambda, filter 사용 def solution(array, height): return len(list(filter(lambda x:x>height, array))) - list comprehension def solution(array, height): return len([i for i in array if i>height])

Algorithm/Python

[프로그래머스] 영어가 싫어

https://school.programmers.co.kr/learn/courses/30/lessons/120894 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import re def solution(numbers): s = '' d = { 'one': '1', 'two': '2', 'three': '3', 'four': '4', 'five': '5', 'six': '6', 'seven': '7', 'eight': '8', 'nine': '9', 'zero': '0', } for i in re.findall(r'(zero|one|two|three|fo..

Algorithm/Python

[프로그래머스] 잘라서 배열로 저장하기

https://school.programmers.co.kr/learn/courses/30/lessons/120913 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(my_str, n): answer = [] for i in range(0, len(my_str),n): answer.append(my_str[i:i+n]) return answer 정규표현식 사용 4자씩 자를 수 있다!! f-string 용법에서 중괄호를 문자열 그대로 표현하기 위해 이스케이프 문자를 사용하지 않음!! 중괄호 2개를 사용한 import re def solu..

Algorithm/Python

[프로그래머스] 369게임

https://school.programmers.co.kr/learn/courses/30/lessons/120891 import re def solution(order): p = re.compile('[369]') return len(p.findall(str(order))) def solution(order): count = 0 for i in str(order): if i == '3'or i == '6' or i == '9': count += 1 return count import re def solution(order): p = re.compile('[369]') return len(p.findall(str(order)))

Algorithm/Python

[프로그래머스] 숨어있는 숫자의 덧셈(1)

https://school.programmers.co.kr/learn/courses/30/lessons/120851?language=python3 def solution(my_string): return sum([int(i) for i in my_string if i.isdigit()]) def solution(my_string): return sum(map(int, filter(lambda x:x.isdigit(), my_string))) 정규표현식으로 풀기 import re my_string = "aAb1B2cC34oOp" re.sub('[a-zA-Z]', '', my_string) import re my_string = "aAb1B2cC34oOp" re.sub('[^1-9]', '', my_stri..

Algorithm/Python

[프로그래머스] 크레인 인형뽑기

https://school.programmers.co.kr/learn/courses/30/lessons/64061?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 크레인 인형뽑기 1. stack을 배열에 담아서 사용 각 열을 stack으로 바꿈, 만약 stack이 비었으면 아무 일도 하지 않고 있으면 가장 위의것을 pop() => 단점 : board의 값들을 stack에 넣는 과정을 거쳐야 함 2. stack을 사용하지 않고 배열의 index를 사용 -> 해당 열의 가장 위의 열이 0이면 그 밑의 것 * 반복 - stack을 ..

yoursin
'Algorithm/Python' 카테고리의 글 목록 (9 Page)