본문 바로가기

전체 글27

4.1(토) - 7의 개수, 문자열 정렬하기 (2) 7의 개수 def solution(array): answer = 0 for i in array: for j in str(i): if j == '7': answer += 1 return answer 문자열 정렬하기 (2) def solution(my_string): answer = '' word = my_string.lower() list = sorted(word) for i in list: answer += i return answer 2023. 4. 1.
잘라서 배열로 저장하기 1. Clarifying Questions 2. Optimized Solution 3. Code def solution(my_str, n): answer = [] cnt = len(my_str) for i in range(0, cnt, n): answer.append(my_str[i:i+n]) return answer 2023. 3. 31.
문자열 밀기 ☑️ 1. Calrifying Question 한번에 하나씩만 옆으로 밀어서 만들 수 있다는 것? 대문자이면 다른 언어로 생각하는 건가? 일단 문제에 모두 소문자로 이루어져있다고 되어있음 미는 것을 어떻게 구현 할 것인가 2. Optimized solution 다시 원문 워드로 돌아올 때까지만 확인해야 한다는 점 밀어주기 구현 하나씩 다 땡기는.... 3. Code [내 시도 >> 완전 멸망] def solution(A, B): answer = 0 listA = list(A) cnt = len(listA) print(cnt) for j in range(cnt): for i in range(cnt): if i == cnt - 1: listA[0] = listA[-1] else: listA[i + 1] = lis.. 2023. 3. 31.
종이 자르기 1. Clarify Questions 정사각형이 아니라 직사각형 일 수도 있는 것인가? 예시 보니 그럼 M = 세로, N = 가로 개수라고 가정, 여러가지 그려보닌 중요한건 크게 한버네 자르는 것들이 있으면 된 2. Optimized solution 나는 세로 개수 기준(가로로 잘라야할) 으로 먼저 잘라 줄 것임 (그다음 잘려진 개수) * (세로로 잘라야할 개수) 3. Code def solution(M, N): answer = 0 answer = (M-1) + M * (N-1) return answer 2023. 3. 31.
연속된 수의 합 1. Clarifying Questions/idea 음수도 포함이 되는가? 예시 보니 그러하다 연속된 수들이니까 1씩 차이가 남 홀수개 : 1,2,3,4,5 >> 합은 사실 (가운데수) *((num / 2 )*2 + 1) 짝수개: 2,3,4,5 >> (처음과 끝수 더한 합) * (num/2) 2. Get to the most Optimized solution num이 홀수인지 짝수인지 구분 홀수 일때 구현 - mid 변수를 구해서 -1 씩 빼주는 짝수 일때 구현 - (처음과 끝수의 합)을 구하고 차이만큼 빼서 첫번째 수 찾기 3. Code def solution(num, total): answer = [] if (num % 2 == 0): firstLast = total / num * 2 firstNum.. 2023. 3. 30.
다음에 올 숫자 1. Clarify Questions / Idea 리스트로 매개변수에 저장하는 것인가? 예시 보니 그러하다 음수도 다 포함해서 생각? 당근 어떻게 해서 주어진 숫자들을 보고 등차인지 등비인지 알 수 있을까? 등차 같은 경우: 리스트 옆에 있는 숫자들끼리 빼본다 차가 같은면 등차임을 알 수 있다 그렇다면 차가 일정하지 않으면 등비라고 생각하기? 즉 등차 등비 외에는 둘다 아닌 경우에 대해서는 나오게 될것인가? 등비임을 판단하면 그냥 바로 첫번째 두번째 수를 나눔으로서 공비를 확인할 수 있다. 리스트는 등차라면 모두 등차인것이가? 예외인 숫자는 없는 거겠지? 그러면 세개의 숫자만 확인하고 구할 수 있으니까 그렇다면 리스트 안에는 최소 3개는 들어가 있어야겠지? 2. Get to the most Optimiz.. 2023. 3. 30.