본문 바로가기

파이썬31

[프로그래머스] lv.1 두 개 뽑아서 더하기 https://programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 풀이 for문으로 순회하면서 더한 값을 추가하고 set해서 정렬한다 def solution(numbers): answer = [] for i in range(len(numbers)): sum = 0 for j in range(i+1, len(numbers)): if i != j: sum = numbers[i] + .. 2022. 5. 10.
[프로그래머스] lv1. 포켓몬 https://programmers.co.kr/learn/courses/30/lessons/1845 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 풀이 nums를 set으로 중복제거한다 set의 길이가 nums//2의 길이보다 작으면 답은 set의 길이 아니면 nums//2가 답 def solution(nums): answer = 0 leng=len(nums)//2 nums=set(nums) if len(nums) > leng: answer= leng else: answer=len(nums) return.. 2022. 5. 9.
[프로그래머스] lv.1 없는 숫자 더하기 https://programmers.co.kr/learn/courses/30/lessons/86051 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. programmers.co.kr 풀이 0부터 9까지 numbers에 없는지 확인하고 없으면 answer에 더한다 def solution(numbers): answer = 0 for x in range(1, 10): if x not in numbers: answer += x return answer 다른 사람의 풀이 def solution(numb.. 2022. 5. 9.
[프로그래머스] lv.1 숫자 문자열과 영단어 https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 풀이 다른 언어는 string replace 하는게 시작과 끝 인덱스를 알아야해서 조금 더 까다롭지만 python은 그냥 replace 함수를 사용하면 된다. 일단 답을 맞혀보고 나중에 생각해보자 하고 무식하게 풀었다. def solution(s): answer = s answer=answer.replace('one', '1') answer=answe.. 2022. 5. 9.
[프로그래머스] lv2. 가장 큰 수 https://programmers.co.kr/learn/courses/30/lessons/42746?language=python3 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr 풀이 numbers 원소는 int형이어서 str 로 바꾸고 앞글자부터 큰 값이 맨 앞으로 가게 정렬한다 그리고 순서대로 answer에 이어붙이고 0000같은 케이스때문에 int로변환했다가 다시 str로 바꿔서 return 한다. * answer=''.join(numbe.. 2022. 5. 9.