본문 바로가기

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

크기가 작은 부분 문자열 첫번째 코드 생각의 순서는 아래와 같다!!1. p 길이에 해당하는 부분 문자열을 생성한다2. 1에서 생성한 부분 문자열들과 p값을 비교한다3. 해당 값보다 작다면 answer에 1씩 추가한다! def solution(t, p):     answer = 0     number = []     for i in range(len(t) - len(p) + 1):         number.append(t[i : i + len(p)])              for i in number:         if int(i)             answer += 1          return answer 통과:)링크https://github.com/ornni/programmers/tree/main/%ED%94%84.. 2024. 5. 14.
추억 점수 첫번째 코드 존재하면 더하고 아니면 말자! def solution(name, yearning, photo):     answer = []          for i in range(len(photo)):         sum = 0         for j in range(len(name)):             if name[j] in photo[i]:                  sum += yearning[j]         answer.append(sum)                  return answer링크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/.. 2024. 5. 13.
약수의 개수와 덧셈 첫번째 코드 직접 해당 범위의 모든 수의 약수의 개수를 구한 후해당 범위 안의 값이 짝수면 더하고 홀수면 뺀다. def solution(left, right):     answer = 0          count = [0] * 1001     for i in range(left, right + 1):         for j in range(1, i+1):             if i % j == 0:                 count[i+1] += 1     for i in range(left, right + 1):         if count[i+1] % 2 == 0:             answer += i         else:             answer -= i     re.. 2024. 5. 8.
소수 만들기 첫번째 코드 소수임을 확인하는 코드를 작성한 후nums안의 원소 중 세개를 더한 값들의 리스트와 비교하여 소수가 맞는지 확인한다. import math def solution(nums):     answer = 0     A = []          prime = list(range(1001))     prime[1] = 0          for i in range(2, int(math.sqrt(1001))+1):         for j in range(i*i, 1001, i):             prime[j] = 0          for i in range(len(nums)):         for j in range(i+1, len(nums)):             for k in ran.. 2024. 5. 8.
최소직사각형 첫번째 코드 큰 것(가로)과 작은 것(세로)을 각각 새로운 리스트에 저장한 후"정답 = 가로 중 최대값 * 세로 중 최대값"을 계산한다. def solution(sizes):     answer = 0     w = []     h = []          for i in sizes:         w.append(max(i))         h.append(min(i))              answer = max(w) * max(h)          return answer 통과!링크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/1/86491.%E2%80%85%EC.. 2024. 5. 3.
3진법 뒤집기 첫번째 코드 3으로 나누는 과정을 통해 3진법으로 만드는 함수와 그 결과를 뒤집는 함수이후에 다시 10진법으로 바꾸는 식만 알고 있다면 for 문을 이용하여 만들 수 있다. def triple_decimal (x):     if x == 0:         return '0'     digits = []          while x:         digits.append(str(x % 3))         x //= 3     return ''.join(digits[::-1]) def solution(n):     answer = 0          change = triple_decimal(n)          for i in range(len(change)):         answer += in.. 2024. 4. 30.
728x90