전체 글 (163) 썸네일형 리스트형 TIL 23-04-04 https://github.com/sdoram/Algorithm 1. 프로그래머스 LV2 - 최솟값 만들기 문제점 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) # A, B = 자연수 # A와B 에서 각각 하나씩 뽑아서 곱하는 걸 누적 # 누적 결과값을 최소로 만들기 # 그럼 A의 최댓값과 B의 최솟값을 곱하는 형식으로 만들어야 할 듯 sort와 reverse사용 문제.. TIL 23-04-03 1. 스파르타 알고보면 알기쉬운 알고리즘 강의 - 1주차 숙제 문제점 input = "011110" def find_count_to_turn_out_to_all_zero_or_all_one(string): result = find_count_to_turn_out_to_all_zero_or_all_one(input) print(result) 최소한으로 숫자를 뒤집는 방법을 알고리즘으로 만들어야 한다. 시도해 본 것들 # 0으로 뒤집은 경우, 1로 뒤집은 경우를 세기 위한 count # for문을 돌면서 0이면 1로, 1이면 0으로 바꾸는 for문 각각 작성 # 밑에서 for문으로 if i == i[+1]: 바꾸고 아니면 break같은 방법 def find_count_to_turn_out_to_all_zer.. WIL 23-04-02 1. 알고리즘 공부 한 주 동안 있었던 일 시간복잡도를 알게 되면서 기존에 내가 알고리즘을 풀면서 반복문 사용으로 아쉬웠던 점을 명확히 알게 됐다. 딕셔너리를 매우 제한적으로 사용해 봤다. 어설프지만 주석을 작성하며 코드 작성 전 생각하는 시간을 가졌다. 있었던 일에 대한 생각 내장 함수로 시간 복잡도를 최소화하는 것도 중요하지만 아직은 기본적인 코드로 만들면서 시간 복잡도를 최소화하는 작업에 익숙해져야 할 것 같다. 딕셔너리의 key와 value를 통해서 기존의 내 방식이라면 반복문이 등장할 부분을 줄일 수 있었다. 더 익숙해진다면 코드의 효율성뿐만 아니라 가독성 또한 크게 증가할 것으로 기대된다. 특강에서 주석을 통해서 먼저 구현할 기능을 작성하고 시작하는 것을 보면서 무작정 시작하고 그 뒤의 코드 .. TIL 23-04-02 1. 프로그래머스 알고리즘 문제 LV2 - JadenCase 문자열 만들 문제점 # JadenCase 문자열 만들기 # 문제 설명 # JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) # 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. # 제한 조건 # s는 길이 1 이상 200 이하인 문자열입니다. # s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다. # 숫자는 단어의 첫 문자로만 나옵니다. # 숫자로만 이루어진 단어는 없습니다. # 공백문자가 연속해서 나올 수 있습니다 공백.. 23-04-02 작은 부표에 올라탄 금융 시장 금융 시장의 참가자끼리 치킨게임을 벌이는 것 같다. 지난 08년도 금융위기 이후 시장이 흔들리면 쏟아지는 유동성으로 역으로 가격이 상승하는 과정을 겪으면서 악재가 발생하면 역으로 매수하는 Buy The Dip 저가 매수의 기회로 보는 시각이 많이 늘어났다고 생각한다. 특히 이번 코로나로 인한 충격에서 오히려 주식시장이 상승하는 과정을 보면서 나같은 일반인도 직접적으로 체험할 수 있었다. 그렇기 때문에 이번 고물가 상황을 제어하기 위한 이례적인 속도의 금리 인상에서도 저가매수를 위한 수요가 꾸준히 들어오면서 가격 방어가 되고 있는 것 같다. 어차피 연준이 유동성을 늘리며 시장을 살려줄 것이라는 기대를 하면서 말이다. 하지만 그동안 연준이 모두를 구할 수 있던 것은 고금리라는 태풍이 한동안 찾아오지 않았기 .. TIL 23-04-01 1. 프로그래머스 LV2 - 최댓값과 최솟값 문제점 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. 시도해 본 것들 공백 제거 후 숫자만 추출 TIL 23-03-31 https://github.com/sdoram/sparta_project https://github.com/sdoram/Algorithm_study 1. 프로그래머스 문제 - 문자열 정렬하기(2) 문제점 # # 문자열 정렬하기(2) # # 문제 설명 # # 영어 대소문자로 이루어진 문자열 my_string이 매개변수로 주어질 때, my_string을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. # # 제한사항 # # 0 < my_string 길이 < 100 시도해 본 것들 # 알파벳 소문자로 바꾸기 TIL 23-03-30 https://github.com/sdoram/Algorithm_study 1. 프로그래머스 알고리즘 문제 - 중복된 문자 제거 문제점 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요. 시도해 본 것들 딕셔너리를 만들어서 key로 중복 값을 체크하기 해결 방법 def solution(my_string): answer = '' my_dict = {} # 딕셔너리 key값으로 존재하는지 확인하고 중복 체크 for str_ in my_string: if str_ not in my_dict: my_dict[str_] = 1 answer += str_ return answer 알게 된 .. 이전 1 ··· 13 14 15 16 17 18 19 ··· 21 다음