알고리즘(20)
-
[프로그래머스] 콜라 문제
📍 문제[프로그래머스] Lv.1 콜라 문제📍 풀이콜라를 받기 위해 마트에 주어야 하는 병 수 a, 빈 병 a개를 가져다 주면 마트가 주는 콜라 병 수 b, 상빈이가 가지고 있는 빈 병의 개수 n이 매개변수로 주어집니다. 상빈이가 받을 수 있는 콜라의 병 수를 return 하도록 solution 함수를 작성해주세요.def solution(a, b, n): answer = 0 while (n >= a): remain_bottle = n % a n = (n//a) * b answer += n n += remain_bottle return answern을 a로 나눠주면 바꿔먹지 않은, 남아있는 remain_bottle이 나온다.(n//a) ..
2024.08.20 -
[프로그래머스] 이상한 문자 만들기
문제설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한사항문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예제 문제풀이def solution(s): answer = '' new_list = s.split(' ') for i in new_list: for j in range(len(i)): if j % 2 == 0: ..
2024.08.14 -
[프로그래머스] 두 개 뽑아서 더하기
문제설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.제한사항 numbers의 길이는 2 이상 100 이하입니다.- numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예numbersresult [2,1,3,4,1][2,3,4,5,6,7][5,0,2,7][2,5,7,9,12]입출력 예 설명입출력 예 #12 = 1 + 1 입니다. (1이 numbers에 두 개 있습니다.)3 = 2 + 1 입니다.4 = 1 + 3 입니다.5 = 1 + 4 = 2 + 3 입니다.6 = 2 + 4 입니다.7 = 3 + 4 입니다.따라서 [2,3,4,..
2024.08.13 -
[프로그래머스] 음양 더하기
문제📝 풀이def solution(absolutes, signs): answer = 0 for i in range(len(absolutes)): if signs[i]: #signs[i]인 경우 true answer += absolutes[i] else: answer -= absolutes[i] return answer 느낀점👨💻처음 보기에는 복잡한 문제인 줄 알았는데 알고보니 signs의 값이 true이면 absolutes의 값을 더하고 false면 빼주는 거라서 문제를 순조롭게 해결할 수 있었다.
2024.08.08 -
[프로그래머스] 나머지 1인 숫자 찾기
[문제 설명]자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.[제한사항]3 ≤ n ≤ 1,000,000[입출력 예][입출력 예 설명]입출력 예 #110을 3으로 나눈 나머지가 1이고, 3보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 3을 return 해야 합니다.입출력 예 #212를 11로 나눈 나머지가 1이고, 11보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 11을 return 해야 합니다. 풀이def solution(n): for i in range(1,n): if n%i == 1: ..
2024.08.01 -
[프로그래머스] 내적
문제 설명길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)제한사항a, b의 길이는 1 이상 1,000 이하입니다.a, b의 모든 수는 -1,000 이상 1,000 이하입니다.입출력 예ab[1,2,3,4][-3,-1,0,2][-1,0,1][1,0,-1]입출력 예 설명입출력 예 #1a와 b의 내적은 1(-3) + 2(-1) + 30 + 42 = 3 입니다.입출력 예 #2a와 b의 내적은 (-1)1 + 00 + 1*(-1) = -2 입니다. 풀이def solution(a, b): ..
2024.07.31