일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- programmers
- counter
- collections
- 코테
- coding test
- 코딩테스트
- 완전탐색
- coding
- import re
- 프로그래머스
- time complexity
- itertools
- 코딩
- 연습문제
- 파이썬
- lambda
- lv4
- level4
- 조합
- sql
- CodingTest
- Queue
- python
- Level2
- 데이터분석
- BFS
- 시간복잡도
- mysql
- Stack
- join
- Today
- Total
목록python (73)
ror_coding
lambda a, b, n : max(n-b, 0) // (a-b)*b 람다 사용 .. 꼭 이해 하자!! Question 콜라를 받기 위해 마트에 주어야 하는 병 수 a, 빈 병 a개를 가져다 주면 마트가 주는 콜라 병 수 b, 상빈이가 가지고 있는 빈 병의 개수 n이 매개변수로 주어집니다. 상빈이가 받을 수 있는 콜라의 병 수를 return 하도록 solution 함수를 작성해주세요. Point lambda 사용 : Code 1while 사용 : Code 2 Code 1 : lambda 사용 solution = lambda a, b, n : max(n-b, 0) // (a-b)*b Code 2 : my code def solution(a, b, n): answer = 0 while n/..
datetime 라이브러리 사용! strftime을 이용하여 해당 날짜의 요일을 sun,mon,tue 등 축약 요일로 출력할 수 있다. Question 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. Point import datetimestrftime(' %a ') Code import datetimedef solution(a, b): return datetime...
lambda를 이용해 특정 인덱스를 기준으로 문자열 정렬하기 !lambda는 너무 어색해~ㅠㅠ Question 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. Code def solution(strings, n): return sorted(strings, key = lambda x:(x[n],x) ) now meOn my github
한 줄 코드 보고 감탄해서 기록한다. Question 모든 명함의 가로 길이와 세로 길이를 나타내는 2차원 배열 sizes가 매개변수로 주어집니다. 모든 명함을 수납할 수 있는 가장 작은 지갑을 만들 때, 지갑의 크기를 return 하도록 solution 함수를 완성해주세요. Point for * for 문 사용. Code 1 : Shortfor * for 이지만 루프 중첩이 아닌, 독립적으로 연속해서 시행되기 때문에 Time Complexity는 O(n)이다.def solution(sizes): return max(max(x) for x in sizes) * max(min(x) for x in sizes) Code 2 : Mine Time Complexity = O(n)def solution(..
조합 Combinations 사용하는 코드!보통 3중 포문으로 비교하던데 이게 Time complexity 도 동일하고 더 직관적이다. Question 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수..
test case는 잘 풀리는데 제출시 예외 때문에 점수가 깎이는 문제 !아마 공백 여러 개 일때가 예외 문제라서 일부러 마지막에 join으로 띄어쓰기 해주는 것 같다. Question 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. Point 단어만 저장하고 return 할 때 ' '.join(result) 사용해서 붙임. Code def solution(s): result = [] for word in s.split(' '): new_word = '' for idx,w in en..
int() 할 때 3진법처럼 잘 안 쓰이는 진법 수도 쉽게 decimal 로 바꿀 수 있다 !뭔가 예전에 썼던 것 같은데 이번 코드에서 활용을 못 했으니 정리한다~,~ Question 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. Point int (ternary, 3) Code def solution(n): ternary = '' while n > 0: ternary += str(n%3) n = n//3 return int(ternary,3) now meOn my github
보통 최대공약수 구하기 하면 Recursion function을 사용하는데 for 문을 통해 쉽게 구하는 코드이다 ! Question 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. Point NOT recursion functionthe greatest common divisorthe least common multiple 공식 : (n*m) // gcd Code def solution(n, m): gcd = 1 for i ..