일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- input()
- 변할 수 있는
- pop()
- 합집합
- 파이썬
- 그룹 # 그룹 해체 # 단축키 #figma #Figma
- insert()
- a=1
- 1일차
- append()
- 불리안
- null # undefined
- 딥러닝
- 부스트캠프
- false
- 정보를 담을 수 있는 그릇
- 성적 입력받기
- Python
- 리스트와 차이점
- 조건문 큰 수부터 입력받아야하는 이유
- 입출력
- Java Script # == # === # difference # 차이
- 변수
- 차집합
- 조지 불
- 귀도 반 로섬
- 변수와 입출력
- index()
- html
- del()
- Today
- Total
목록Algorithm (82)
I about me
시간복잡도 다음 시간 복잡도 예제를 통해 '빅오메가, 빅세타, 빅오'에 대해서 알아보자면 다음과 같다. import random findNumber = random.randrange(1, 101) for i in range(1, 101): if i == findNumber: print(i) break 빅오메가(Ω(n)) - 최선일 때(best case)의 연산 횟수를 나타낸 표기법 - 시간복잡도: 1 (findNumber로 1을 생각하고 있었는데, i가 1부터 시작할 수 있으니까 바로 값을 찾았기 때문) 빅세타(θ(n)) - 보통일 때(average case)의 연산 횟수를 나타낸 표기법 - 시간복잡도: N/2 = 50 빅오(O(n)) - 최악일 때(worst case)의 연산 횟수를 나타낸 표기법 - ..

프로그래머스에서 처음 풀어보는 level 2 문제... 생각보다 이것저것 찾아보다보니 저번 학기에 배운 "운영체제"의 개념을 가지고 있다는 것을 깨달았다. 와 이렇게 문제를 만드는구나 새삼 놀라게 되었다... 그래도 앞으로 일주일에 3~4번은 level 2 문제를 풀어보기로 계획했으니 차근차근 수행해보자고!! 문제 지도개발팀에서 근무하는 제이지는 지도에서 도시 이름을 검색하면 해당 도시와 관련된 맛집 게시물들을 데이터베이스에서 읽어 보여주는 서비스를 개발하고 있다. 이 프로그램의 테스팅 업무를 담당하고 있는 어피치는 서비스를 오픈하기 전 각 로직에 대한 성능 측정을 수행하였는데, 제이지가 작성한 부분 중 데이터베이스에서 게시물을 가져오는 부분의 실행시간이 너무 오래 걸린다는 것을 알게 되었다. 어피치는 ..
append(): 리스트의 끝에 하나의 요소를 추가함. my_list = [1, 2, 3] my_list.append(4) print(my_list) # 출력: [1, 2, 3, 4] extend(): 리스트의 끝에 다른 리스트의 모든 요소를 추가 my_list = [1, 2, 3] my_list.extend([4, 5, 6]) print(my_list) # 출력: [1, 2, 3, 4, 5, 6]
lower() : 대문자 → 소문자 String = "ABCD" String.lower() # "abcd" upper() : 소문자 → 대문자 String = "abcd" String.upper() # "ABCD" swapcase(): 대문자 → 소문자, 소문자 → 대문자 String = "abcdEFG" String.swapcase() # "ABCDefg"
접미사 endswith() def solution(my_string, is_suffix): if my_string.endswith(is_suffix): return 1 else: return 0 접두사 startswith() def solution(my_string, is_prefix): if my_string.startswith(is_prefix): return 1 else: return 0
2월까지 프로그래머스 l0 다 푸는 것이 목표였다...ㅋ 그러나 나는... 현재... 약 150문제가 남았다...!! 적어도 개강하기 전까지는 수를 줄여 파이썬에 더욱이 익숙해지는 순간을 만드는 것이 목표가 되어버렸다..!! 문자열 안에 문자열 문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요. 1차 시도 def solution(str1, str2): answer = 2 for i in range(len(str1)-2): # print(str1[i:i+3]) if str1[i:i+3] == str2: answer = 1 return answer 진짜 나 바본가...? 입출력 예시를 보고 풀다 보니 3..
all() 함수 자료구조 내의 모든 요소가 참일 때만 True를 반환하며, 거짓인 요소가 하나라도 있으면 False를 반환한다. all([True, True, True, True, True]) # True all([True, False, True, True, True]) # False 배열 만들기 2 def solution(l, r): answer = [] for num in range(l, r+1): if all(i in {"0", "5"} for i in str(num)): answer.append(num) if answer == []: answer.append(-1) return answer
나의 풀이는 다음과 같다...! def solution(a, b, c): answer = 0 if (a != b) and (b != c) and (a != c): answer = a + b + c elif (a == b) and (b == c) and (a == c): answer = (a + b + c) * (a**2 + b**2 + c**2) * (a**3 + b**3 + c**3) else: answer = (a + b + c) * (a**2 + b**2 + c**2) return answer 근데 다른 사람의 풀이에서 너무 놀랬다... 그래서 적는 거다..! def solution(a, b, c): check=len(set([a,b,c])) if check==1: return 3*a*3*(a**2..

for문 정리하기 즉, in 뒤에는 단순히 숫자가 아니라 리스트나 튜플의 형태여야 한다! 그러므로 첫 번째, 이렇게 단순히 in 뒤에 len(str1)을 쓰면 안 되는 것이다..!! 두 번째, 문제에서 "문자열의 크기가 같은"이라고 했다... 그래 그러니까 굳이 이중문을 쓸 필요가 없다....!! 세 번째, 딱 끊기지 않고 계속 더해져야하는 느낌을 더하려면..!! str1 = "aaaaa" str2 = "bbbbb" answer = "" for i in range(len(str1)): answer += str1[i] + str2[i] print(answer) 이렇게 해야한다..! 그렇구나...!

처음에는 이렇게 했었다... def solution(my_string, overwrite_string, s): my_string[s:s+len(overwrite_string)] = overwrite_string answer = my_string return answer solution(He11oWor1d, lloWorl, 2) 뭔가 아는 척하는 어설픈 상태... 와... 어쨌든 완성... 아자아자 힘내라 def solution(my_string, overwrite_string, s): answer = my_string[0:s] + overwrite_string + my_string[s+len(overwrite_string):] return answer