본문 바로가기

코딩 테스트/프로그래머스99

둘만의 암호 첫번째 코드 하나씩 알파벳을 미뤄보면서 skip안에 해당 알파벳이 있는 경우에 해당 개수만큼 추가로 더 밀어버린다. def solution(s, skip, index):     answer = ''     skip_count = [0] * len(s)     for i in range(len(s)):         for j in range(1, index + 1):             alpha = chr((ord(s[i]) + j - ord('a')) % 26 + ord('a'))             if alpha in skip:                 skip_count[i] += 1     for i in range(len(s)):         answer += chr((ord(s[i.. 2024. 6. 8.
신고 결과 받기 첫번째 코드 필요한 것들을 하나하나 만들어가면서 차차 진행하면 된다! 라고 생각했다...일단 중복 데이터 제거하고!!!이렇게 1, 2, 3, 4가 필요하다고 생각하고 진행했다!! def solution(id_list, report, k):     check = [[] for _ in range(len(id_list))]     warning = [0] * len(id_list)     stop = []     mail = [0] * len(id_list)     data = []     # 중복 데이터 제거     data1 = set()     for i in report:         data1.add(i)     data1 = list(data1)     # 데이터 내부 분리     for i i.. 2024. 6. 7.
숫자 짝꿍 첫번째 코드 X의 숫자 원소들의 개수를 세고 X에 원소가 있는 경우만 Y의 원소를 세어 XY라는 리스트를 만들었다.XY리스트에 숫자가 있는 경우 해당 원소는 짝꿍이 있는 것이므로"원소 * XY"에서 표현한 개수로 곱한다.또한 00과 같은 경우 0으로 표현하기 위해 int로 바꾸고 다시 str로 돌린다. def solution(X, Y):     answer = ''     x_list = [0] * 10     xy_list = [0] * 10     for i in X:         x_list[int(i)] += 1     for i in Y:         if x_list[int(i)] > 0:             xy_list[int(i)] += 1     for i in range(len(.. 2024. 6. 6.
N개의 최소공배수 첫번째 코드 최대 공약수를 구해서 모든 수에 나눈 후 최소 공배수를 구하면 되지 않을까? def MOD(a, b):     x = min(a, b)     y = max(a, b)          if x == 0:         return y     else:         return MOD(x, y%x) def solution(arr):     answer = 1     arr.sort()     gcd = arr[0]          for i in arr[1:]:         gcd = MOD(gcd, i)          for j in arr:         answer *= (j/gcd)          return int(answer*gcd) 오답...!두번째 코드 제곱수와 같은 문제.. 2024. 6. 4.
바탕화면 정리 첫번째 코드 파일이 위치한 위치를 파악하기 위해 해당 위치들을 확인하여 x, y 리스트에 저장한다. 드래그 시작을 위한 왼쪽 위는 x, y의 최소값들이다.하지만 드래그의 끝인 오른쪽 아래는 x, y의 최대값에 +1을 한 값이다.아래 그림으로 이해하면 편하다! def solution(wallpaper):     x = []     y = []     for i in range(len(wallpaper)):         for j in range(len(wallpaper[i])):             if wallpaper[i][j] == '#':                 x.append(i)                 y.append(j)     lux = min(x)     luy = min(y.. 2024. 6. 3.
가장 큰 수 첫번째 코드 문자열로 변경한 후 문자열 순서대로 정렬을 한다.이후에 모든 수를 붙인다! def solution(numbers):     numbers = list(map(str, numbers))     numbers.sort(key = lambda x: x*3, reverse = True)     return str(int(''.join(numbers))) 통과!링크https://github.com/ornni/programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/2/42746.%E2%80%85%EA%B0%80%EC%9E%A5%E2%80%85%ED%81%B0%E2%80%85%EC%88%98 programmers/프로그래머.. 2024. 6. 2.
728x90