codekata(5)
-
TIL41 | CodeKata 복소수 계산, 리스트 뒤집기
CodeKata Week 3 문제 1 두 개의 input에는 복소수(complex number)가 string 으로 주어집니다. 복소수란 a+bi 의 형태로, 실수와 허수로 이루어진 수입니다. input으로 받은 두 수를 곱해서 반환해주세요. 반환하는 표현도 복소수 형태의 string 이어야 합니다. 복소수 정의에 의하면 (i^2)는 -1 이므로 (i^2) 일때는 -1로 계산해주세요. 제곱 표현이 안 되어 i의 2제곱을 (i^2)라고 표현했습니다. input "1+1i", "1+1i" "1+-1i", "1+-1i" "1+3i", "1+-2i" output "0+2i" "0+-2i" "7+1i" 나의 풀이 def complex_number_multiply(a, b): a1 = int(a.split('..
2021.11.02 -
TIL39 | CodeKata 가장 자주 등장한 숫자 출력하기, 물을 담을 수 있는 가장 넓은 면적
CodeKata Week 2 문제 4 숫자로 이루어진 배열인 nums를 인자로 전달합니다. 숫자 중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요. def more_than_half(nums): # 구현 input nums = [3,2,3] nums = [2,2,1,1,1,2,2]output 3 2 나의 풀이 각 요소별 count 비교 def top_k(nums, k): set_list = set(nums) result = [(target, nums.count(target)) for target in set_list] result.sort(key = lambda x : -x[1]) return [result[i][0] for i in range(k)] 문제 5 인..
2021.10.29 -
TIL38 | CodeKata 숫자 중에서 과반수가 넘은 숫자 찾기, 여러 괄호 규칙 짝 맞추기
CodeKata Week 2 1주차보다 문제가 좀 더 어려워진 것 같다. 문제 2 숫자로 이루어진 배열인 nums를 인자로 전달합니다. 숫자 중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요. def more_than_half(nums): # 구현 input nums = [3,2,3] nums = [2,2,1,1,1,2,2]output 3 2 나의 풀이 각 요소별 count 비교 def more_than_half(nums): set_list = set(nums) result, count = 0, 0 for i in set_list: if count < nums.count(i): result = i count = nums.count(i) return result n..
2021.10.27 -
TIL31 | CodeKata 로마자에서 숫자로 바꾸기
CodeKata Week 2 문제 1 로마자에서 숫자로 바꾸기 1~3999 사이의 로마자 s를 인자로 주면 그에 해당하는 숫자를 반환해주세요. 로마 숫자를 숫자로 표기하면 다음과 같습니다. Symbol Value I 1 V 5 X 10 L 50 C 100 D 500 M 1000 로마자를 숫자로 읽는 방법은 로마자를 왼쪽부터 차례대로 더하면 됩니다. III = 3 XII = 12 XXVII = 27입니다. 그런데 4를 표현할 때는 IIII가 아니라 IV 입니다. 뒤의 숫자에서 앞의 숫자를 빼주면 됩니다. 9는 IX입니다. I는 V와 X앞에 와서 4, 9 X는 L, C앞에 와서 40, 90 C는 D, M앞에 와서 400, 900 def roman_to_num(s): # 구현 input s = 'III..
2021.10.25 -
TIL30 | CodeKata 중복되지 않은 알파벳 중 제일 긴 단어, 뒤집은 모양이 같은 숫자 찾기, ⭐️공통된 시작 단어 찾기
CodeKata Week 1 문제 3 String 형인 str 인자에서 중복되지 않은 알파벳으로 이루어진 제일 긴 단어의 길이를 반환해주세요. str: 텍스트 return: 중복되지 않은 알파벳 길이 (숫자 반환) def get_len_of_str(s): # 구현 input str = "abcabcabc"output 3 나의 풀이 def get_len_of_str(s): str = [] length = 0 for i in range(len(s)): if s[i] not in str: str.append(s[i]) else: str = [s[i]] print(str) length = max(length, len(str)) return length 문제 4 숫자인 num을 인자로 넘겨주면, 뒤집은 모양이 n..
2021.10.22