[프래그래머스] 문자열 정수로 바꾸기(Python)
문제 설명 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 첫 코드 def solution(s): return int(s)
- 알고리즘/프래그래머스 lv.1
- · 2022. 10. 27.
문제 설명 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 첫 코드 def solution(s): return int(s)
문제 설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 핵심 아이디어 1. sorted() 내장 함수에서 reverse = True로 설정하면 내림차순으로 정렬이 된다. 2. 문자열 정렬 수행하는 데 기본적으로 대문자가 소문자보다 앞서서 정렬이 된다. 첫 코드 def solution(s): return ''.join(sorted(s, reverse = True))
문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. 핵심 아이디어 1. sorted 함수 안에 키 값으로 람다함수를 사용할 수 있다. 2. 람다 함수 안의 명령어를 튜플 현식으로 넣어서 문자열을 정렬할 수 있다. 첫 코드 def solution(strings, n): return sorted(strings, key=lambda x:(x[n],x))
핵심 아이디어 이 문제는 비트 연산 알고리즘을 사용하면 쉽게 폴리는 문제이다. 첫 코드 def solution(n, arr1, arr2): temp = [] for i in range(0, n): temp.append(bin(arr1[i] | arr2[i])) temp[i] = temp[i][2:] temp[i] = temp[i].zfill(n) temp[i] = temp[i].replace('1', '#').replace('0', ' ') return temp 개선된 코드 def solution(n, arr1, arr2): temp = [] for i in range(0, n): temp.append(bin(arr1[i] | arr2[i])) temp[i] = temp[i][2:].zfill(n).re..
문제 설명 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. 핵심 아이디어 1. 입력되는 알파뱃의 대문자와 소문자로 나눈다. 2. 각 문자마다 아스키 코드 값을 0~25사이로 만든 뒤, n값을 더한 나머지 값을 다시 아스키 코드 값을 더해서 반환해준다. 3. 띄어쓰기는 조건문에서 따로 반환해 주었다. 첫 코드 def solution(s, n): answer = [] for i in range(0, len(s)): if s..
문제 설명 d는 부서별로 신청한 예산 금액이 들어있는 배열이며, 정해진 budget(예산) 안에서 부서에 원하는 금액을 모두 지원해줘야 한다. 최대 몇 개의 부서에 예산을 지원할 수 있는지 구하여라. 첫 코드 def solution(d, budget): d.sort() for i in enumerate(d): budget -= i[1] if budget < 0: break if budget == 0: answer = (i[0]+1) else: answer = (i[0]) return answer 개선된 코드 def solution(d, budget): d.sort() temp=0 if sum(d) budget: return i 핵심 아이디어 제일 처음으로 배열 d를 오름차순으로 정렬해준다. 그리고, 만약..