level1 5

프로그래머스 level1 문제들(정답률50%이하)

- 신규 아이디 추천 -처음에는 ord를 이용해 "2단계 new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자를 제거합니다." 를 적용했지만, 정규표현식을 이용해 다시 프로그램을 짰다. 정규표현식 짱짱맨! -다른 분들의 풀이법을 보니 for문을 사용해 정규표현식을 사용하지 않고 re.sub메소드를 이용해 엄청 간결하게 하셨다! re.sub(pattern, repl, string, count=0, flags=0)는 해당 string에서 정규식pattern에 해당하는 부분이 있다면 repl로 바꿔서 반환한다! 이렇게 좋은 함수가 있을줄이야... import re def solution(new_id): # step 1 answer = new_id.lower() # s..

프로그래머스 level1 문제들(정답률50%~60%)

- [1차] 다트 게임 숫자가 한자리가 아닌것을 처리하는것. 특수문자에서 nums 길이가 1인것을 고려해야한다. def solution(dartResult): import re nums = [] before = '' #한자리 숫자가 아닌것을 처리 for x in dartResult: #숫자라면 nums에 저장 if re.match('[0-9]', x): if before == 'num': nums[len(nums)-1] = nums[len(nums)-1] * 10 + int(x) else: nums.append(int(x)) before = 'num' #S D T 라면 마지막 nums에 배수. elif re.match('[SDT]', x): before = 'pow' if x == 'D': nums[le..

프로그래머스 level1 문제들(정답률60%~70%)

- [1차] 비밀지도 숫자를 이진 문자열로 바꾸는 방법은 두가지가 있다. "{0:b}".format(37)과 같이 .format을 사용하는 것과 bin()내장함수를 사용하는 방법이 있다. https://stackoverflow.com/questions/699866/python-int-to-binary-string def solution(n, arr1, arr2): answer = [] for y in range(n): row1 = "{:b}".format(arr1[y]).rjust(n,"0") row2 = "{:b}".format(arr2[y]).rjust(n,"0") row = '' for x in range(n): if row1[x] == '0' and row2[x] == '0': row += ' '..

프로그래머스 level1 쉬운 문제들(정답률70%이상)

- 평균 구하기 def solution(arr): return sum(arr) / len(arr) - 약수의 합 n이 0일 때와 1일 때 예외 처리를 해주어야 한다. def solution(n): if n == 0: return 0 elif n == 1: return 1 answer = 1 + n for x in range(2, n): if n % x == 0: answer += x return answer - x만큼 간격이 있는 n개의 숫자 def solution(x, n): answer = [] if x == 0: answer = [0]*n else: answer = [x for x in range(x, x*(n+1), x)] return answer - 자릿수 더하기 def solution(n): ..

프로그래머스 level 1 sql 문제들

- 아픈 동물 찾기 SELECT ANIMAL_ID, NAME from ANIMAL_INS where INTAKE_CONDITION like 'Sick' order by ANIMAL_ID - 역순 정렬하기 SELECT NAME, DATETIME from ANIMAL_INS order by ANIMAL_ID desc - 상위 n개 레코드 select NAME from ANIMAL_INS where DATETIME = (SELECT MIN(DATETIME) from ANIMAL_INS) --또는 select NAME from ANIMAL_INS order by datetime limit 1 - 어린 동물 찾기 SELECT animal_id, name from animal_ins where intake_cond..