전체 글(177)
-
푸드 파이트 대회 - Python
1. 풀이 코드 def solution(food): answer = '' for i in range(1, len(food)): answer += f"{i}" * (food[i] // 2) return answer + "0" + answer[::-1] # Test Cases print(solution([1, 3, 4, 6]) == "1223330333221") print(solution([1, 7, 1, 2]) == "111303111") 간단하게 풀었습니다. 2. 다른 사람 풀이 코드 1) 진짜로 앞뒤에 붙인 사람 def solution(food): answer ="0" for i in range(len(food)-1, 0,-1): c = int(food[i]/2) while c>0: answer = s..
2023.10.17 -
K번째수 - Python
1. 풀이 코드 def solution(array, commands): answer = [] for item in commands: temp = array[item[0] - 1:item[1]] temp.sort() answer.append(temp[item[2] - 1]) return answer # Test Cases print(solution([1, 5, 2, 6, 3, 7, 4], [[2, 5, 3], [4, 4, 1], [1, 7, 3]])) 차근차근 풀었습니다. 2. 다른 사람 풀이 코드 def solution(array, commands): return list(map(lambda x:sorted(array[x[0]-1:x[1]])[x[2]-1], commands)) 한 줄로 표현하다니 대단하..
2023.10.17 -
[1차] 비밀지도 - Python
1. 풀이 코드 def solution(n, arr1, arr2): answer = [] for map1, map2 in zip(arr1, arr2): temp = f"{map1 | map2:016b}" print(temp[-n:]) answer.append(temp[-n:].replace("1", "#").replace("0", " ")) return answer # Test Cases print(solution(5, [9, 20, 28, 18, 11], [30, 1, 21, 17, 28])) print(solution(6, [46, 33, 33, 22, 31, 50], [27, 56, 19, 14, 14, 10])) 비트연산자 or을 통해 두 지도의 데이터를 합친 뒤 binary로 바꿔주었습니다. 2..
2023.10.17 -
문자열 내 마음대로 정렬하기 - Python
1. 풀이 코드 def solution(strings, n): answer = [] for item in strings: temp_str = item[n] + item[0:n] + item[n+1:] answer.append(temp_str) answer.sort() return [item[1:1+n] + item[0] + item[1+n:] for item in answer] # Test Cases print(solution(["sun", "bed", "car"], 1)) print(solution(["abce", "abcd", "cdx"], 2)) n번째 글자를 맨 앞으로 옮긴 뒤 정렬을 하고, 다시 복원하는 과정으로 문제를 풀었습니다. 2. 다른 사람 풀이 코드 def solution(strings..
2023.10.17 -
영어 끝말잇기 - Python
1. 풀이 코드 def solution(n, words): temp = words[0][0] player = 0 word_num = 1 word_list = [] for item in words: if player >= n: player = 1 word_num += 1 else: player += 1 if item[0] == temp: if item in word_list: return [player, word_num] else: word_list.append(item) temp = item[-1] else: return [player, word_num] return [0, 0] # Test Cases print(solution(3, ["tank", "kick", "know", "wheel", "land..
2023.10.16 -
숫자 문자열과 영단어 - Python
1. 풀이 코드 def solution(s): s = s.replace("zero", "0") s = s.replace("one", "1") s = s.replace("two", "2") s = s.replace("three", "3") s = s.replace("four", "4") s = s.replace("five", "5") s = s.replace("six", "6") s = s.replace("seven", "7") s = s.replace("eight", "8") s = s.replace("nine", "9") return int(s) # Test Cases print(solution("one4seveneight")) print(solution("23four5six7")) print(solu..
2023.10.16 -
짝지어 제거하기 - Python
1. 풀이 코드 def solution(s): stack = [' '] for right in s: left = stack.pop() if left == right: pass else: stack.append(left) stack.append(right) return int(len(stack) == 1) # Test Cases print(solution("baabaa")) print(solution("cdcd")) stack으로 풀었습니다. 더보기 1) 틀린 코드 def solution(s): temp = "" while temp != s: temp = s s = s.replace("aa", "") s = s.replace("bb", "") s = s.replace("cc", "") s = s.repla..
2023.10.15 -
시저 암호 - Python
1. 풀이 코드 def solution(s, n): small = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"] large = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"] answer = '' for item in s: if item in small: answer += small[(small.index(item) + n) % 26] ..
2023.10.15 -
최소직사각형 - Python
1. 풀이 코드 def solution(n): x, y = 0, 0 for a, b in n: x = max(x, max(a, b)) y = max(y, min(a, b)) return x*y # Test Cases print(solution([[60, 50], [30, 70], [60, 30], [80, 40]])) print(solution([[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]])) print(solution([[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]])) 위와 같이 풀었습니다. 2. 다른 사람 풀이 코드 solution = lambda sizes: max(sum(sizes, [])) * max(min(size) for ..
2023.10.15 -
피보나치 수 - Python
1. 풀이 코드 def solution(n): right = 1 left = 1 for i in range(n-2): temp = right right += left left = temp return right % 1234567 # Test Cases print(solution(3)) print(solution(5)) for()문을 사용하여 작성했습니다.. 2. 다른 사람 풀이 코드 # 문제가 개편되었습니다. 이로 인해 함수 구성이나 테스트케이스가 변경되어, 과거의 코드는 동작하지 않을 수 있습니다. # 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다. def fibonacci(num): a, b = 0, 1 for i in..
2023.10.15