목록python (16)
고양이와 코딩
10월 18일 문제 나의 풀이 def solution(numlist, n): distance_value = [] answer = [] # 거리와 원본 값 튜플을 리스트에 추가 계산하여 distance 리스트에 추가 for i in numlist: distance = abs(i - n) distance_value.append((distance, i)) # 거리가 같으면 더 큰 값을 앞에 두도록 정렬 distance_value.sort(key = lambda x : (x[0], -x[1])) answer = [x[1] for x in distance_value] return answer 조건부 정렬이라 lambda를 써야겠다는 생각을 했다.. distance_value에 [(3,1),(2,2) ......]..
[2023.10.9] 문제 def solution(before, after): before_word = list(before) after_word = list(after) before_word.sort() after_word.sort() if before_word == after_word: return 1 else: return 0 list로 문자열을 문자로 분리한것까진 좋았으나, sort를 사용하지 않으면 순서가 달라서 if문에서 인식하지 못함! sort로 순서대로 정렬 후 비교하기 [2023.10.11] 문제 처음 접근 방법 각 start-end의 절댓값 길이에서 다른 선분의 절댓값 길이를 뺐을때.. 어쩌고..
문제 문제 익히기 1. 3의 배수와 "3"이 들어간 숫자는 사용할 수 없다. 2. 3의 배수가 아니면서 && 3이 들어가지 않을 때 까지 숫자를 1씩 증가시킨다. (누적되야함) 3. n까지 반복문을 돌아야 한다. 풀이 def solution(n): result = 0 tmp = 1 while n: #n이 0이 아닐 동안 반복 str_num = str(tmp) if tmp % 3 == 0 or '3' in str_num: tmp += 1 else: result = tmp tmp += 1 n -= 1 return result tmp로 증가된 값을 저장하고 result = tmp로 현재 누적 값으로 숫자를 초기화 해 준다. 그리고 n을 1씩 감소시키면서 n이 0이 되면 while문을 나오도록 코드를 짰다.
문제 def solution(spell, dic): answer = "".join(spell) for word in dic: if answer in word: return 1 else: return 2 ❌ 일단 생각나는대로 후루룩 짠 코드. 오답!! (당연함) 3개의 테스트 케이스 중 두 개만 통과했다. 문제는 더 이상 머리가 굴러가지 않았고.. 이중 for문은 정말로 이제는 그만 써야할 것 같았기에.. 파이썬 문자열 문자 중복 어쩌구 검색을 통해서 set함수를 써야겠다!! 까지 도달했다 ㅎㅎ def solution(spell, dic): set_spell = set(spell) for word in dic: if set_spell.issubset(set(word)): return 1 return 2 *..
문제 코드 import math def solution(flo): answer = math.trunc(flo) return answer math 모듈에 포함되어 있는 trunc 함수를 사용했습니다 trunc() 함수는 실수의 소수점 부분을 버리고 정수만을 반환해주는 함수입니다!!! 굿
문제 코드(틀린) def solution(dots): x = abs(dots[0][0] - dots[1][0]) y = abs(dots[0][1] - dots[1][1]) answer = x * y return answer 당연히 이렇게 하면 배열 값 달라지는거에 따라서 수많은 테스트케이스 오류가 난다는것을 알지만,,, 어떤식으로 코드를 짜야할지, 각각의 배열 요소를 순회하면서 양수인지 음수인지를 파악해야하는지 ㄴㅇㄱ 그래서!! 종이에 평면좌표 그려서 하나하나 해보면서... 코드(맞은 ^^) def solution(dots): x = [dot[0] for dot in dots] y = [dot[1] for dot in dots] x_min = min(x) x_max = max(x) y_min = min(..