Algorithm

#연습문제 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12901 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 날짜를 입력받으면 요일을 return하는 함수를 정의한다. 1월 1일을 기준으로 [총 날짜수 % 7]의 값에 따라 요일이 결정됨을 이용한다. 윤달 등을 고려하기 위해, 각 달마다 날짜 수를 배열로 저장했다. 나머지 값에 따른 요일명을 딕셔너리 형으로 저장했다. 이때 나머지 값은 0 ~ 6까지 나올 수 있고, 2016년 1월 1일이 금요일임을 참고해 0:"목" 부터 시작한다. ..
#연습문제 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12916 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문자열 s에서 문자 p의 개수와 s의 개수를 구해 비교한 뒤, 같으면 True 다르면 False를 return한다 이때 대소문자 구별이 없으므로 우선 받아온 문자열을 lower() 메소드를 이용해 소문자 처리한다. count() 메소드를 이용해 문자열에서 p, y의 개수를 비교해 if문의 조건으로 넣어 주었다. 코드 def solution(s): return True if s..
#월간 코드 챌린지 시즌2 문제 https://school.programmers.co.kr/learn/courses/30/lessons/77884 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 약수가 짝수개인 수는 더하고, 홀수개인 수는 뺀 값을 return한다. 약수의 개수가 짝수/홀수로 나뉘는 차이가 뭘까? 약수는 기본적으로 2개의 값이 짝을 이루는 형태이다. -> 일반적인 경우 짝수가 나온다 홀수가 나온다는 것은 짝 없이 1개로만 존재하는 약수가 있다는 것인데-> 제곱근이 존재하는 경우 따라서 if에 제곱근이 존재하는 경우 == true 로 설..
#월간 코드 챌린지 시즌2 문제 https://school.programmers.co.kr/learn/courses/30/lessons/76501 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 매개변수로 두 List를 받아온다. abs가 저장된 absolutes, 해당 값의 부호를 true, false로 저장한 signs True 는 +, False 는 -로 대응된다. len(absolutes) == len(signs)이므로 둘 중 하나의 길이를 이용해 range로 for문을 돌려준다 둘 다 각 값을 불러오는데 인덱스가 필요하므로 range를 이용해..
# 완전탐색 문제 https://programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 진짜 바보같이 풀어서 해설 생략... 다들 나보단 잘 풀었을 듯 최대값 구할 때 하나씩 비교하고 자빠짐... max는 어디에 뒀니? 코드 def solution(answers): dataset1 = [1,2,3,4,5] dataset2 = [2,1,2,3,2,4,2,5] dataset3 = [3,3,1,1,2,2,4,4,5,5] #반복되는 데이터 셋 설정 correct = [0, 0, ..
# 2021 Dev-Matching: 웹 백엔드 개발자(상반기) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/77484 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 0을 제외한 숫자 中 일치하는 숫자 개수 = 최소 (0이 모두 hit했다고 가정) 최소값 + 0 개수 = 최대 switch 대신에 딕셔너리형 사용 파이썬에서는 switch/case 대신 dictionary 나 elif를 사용한다. 코드 def solution(lottos, win_nums): first, last, dk =..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 중복신고는 처리되지 않으므로 set을 통해 중복을 없애줬다. set은 순서가 없으므로 index를 이용한 값 불러오기가 불가능하다. 따라서 list를 이용해 다시 바꿔줬다. 비효율적이라고 생각한다.. id_list에 담긴 이름과, 해당하는 인덱스로 처리해주기 위해 딕셔너리를 사용했다. [nidx] 딕셔너리 처리속도가 더 빠르다. 저장공간을 줄일 수 있을까 싶어 {'이름':'인덱스'} 방..
mopipi
'Algorithm' 카테고리의 글 목록 (11 Page)