본문 바로가기

Python71

[프로그래머스] 정수 내림차순으로 배치하기 문제 설명 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조건 n은 1이상 8000000000 이하인 자연수입니다. 입출력 예 n return 118372 873211 [python] def solution(n): li = sorted(i for i in list(str(n))) li.reverse() return int(''.join(li)) [다른사람풀이] def solution(n): ls = list(str(n)) ls.sort(reverse = True) return int("".join(ls)) 음.. 정렬이랑 reverse를 같이 하신 분도.. 2020. 7. 5.
[프로그래머스] 자연수 뒤집어 배열로 만들기 문제 설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345 [5,4,3,2,1] [python] def solution(n): li = [int(i) for i in list(str(n))] li.reverse() return li [프로그래머스] 자릿수 더하기 [프로그래머스] 자릿수 더하기 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : .. 2020. 7. 5.
[프로그래머스] 자릿수 더하기 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출력 예 N answer 123 6 987 24 입출력 예 설명 입출력 예 #1 문제의 예시와 같습니다. 입출력 예 #2 9 + 8 + 7 = 24이므로 24를 return 하면 됩니다. [python] def solution(n): # list(str(n))으로 한글자씩 자를수 있다. # int(i) for i in list 를 통해 리스트의 값을 int 로 변환한다. n = [int(i) for i in list(str(n))] return .. 2020. 7. 5.
[프로그래머스] 이상한 문자 만들기 문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예 s return try hello world TrY HeLlO WoRlD 입출력 예 설명 try hello world는 세 단어 try, hello, world로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 TrY, HeLlO,.. 2020. 7. 5.
[프로그래머스] 약수의 합 문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다. 입출력 예 #2 5의 약수는 1, 5입니다. 이를 모두 더하면 6입니다. [python] def solution(n): answer = 0 for i in range(1, n+1) : if n % i == 0 : answer += i return answer [다른사람 풀이] def sumDivisor(num): return sum([i for i in range(1,num+1) if nu.. 2020. 7. 5.
[프로그래머스] 소수 찾기 문제 설명 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 1000000이하의 자연수입니다. 입출력 예 n result 10 4 5 3 입출력 예 설명 입출력 예 #1 1부터 10 사이의 소수는 [2,3,5,7] 4개가 존재하므로 4를 반환 입출력 예 #2 1부터 5 사이의 소수는 [2,3,5] 3개가 존재하므로 3를 반환 [python] def solution(n): prime = [False, False] +[True]*(n-1) for i in range(2, n+1) : if prime[i] : for j in range(i*2, n+1,.. 2020. 7. 5.
[프로그래머스] 문자열 다루기 기본 문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 이상, 길이 8 이하인 문자열입니다. 입출력 예 s return a234 false 1234 true [python] def solution(s): try : int(s) if len(s) == 4 or len(s) == 6 : return True return False except : return False 문자열을 int로 바꿀때 문자가 있으면 오류가 난다는것을 생각하고 짜보았다. [다른사람풀이] def alpha_string46(s): return s.isdigit(.. 2020. 7. 4.
[프로그래머스] 문자열 내림차순으로 배치하기 문제 설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 제한 사항 str은 길이 1 이상인 문자열입니다. 입출력 예 s return Zbcdefg gfedcbZ [python] def solution(s): return ''.join(sorted(s,reverse=True)) 문자열을 sorted로 정렬을 할 수 있다는것이 생각났다..! reverse를 인자값으로 주어서 거꾸로 정렬이 가능하다. list형태는 join을 통해 다시 문자열로 변경할 수 있다. 나름 깔끔하게 짠거같아 마음에 든당 >_ 2020. 7. 4.
[python] 증감연사자가 있다? 없다?? 여러 언어들을 사용할 때 자연스럽게 ++이나 --와 같은 증감 연산자를 사용하곤 한다. 증감 연산자는 간편하기도 하고 코드의 양을 줄여 줄 수 도 있는 기능을 하는데, python에서는 증감 연산자가 없다.. python에서 a++, a--처럼 사용을 하면 오류가 난다.. ㅠ python은 반복문의 형태만 봐도 증감 연산자가 없다는 것을 눈치챌 수 있다. for(int i=0; i 2020. 7. 4.
[프로그래머스] 문자열 내 p와 y의 개수 문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 pPoooyY면 true를 return하고 Pyy라면 false를 return합니다. 제한사항 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. 입출력 예 s answer pPoooyY true Pyy false 입출력 예 설명 입출력 예 #1 'p'의 개수 2개, 'y'의 개수 2개로 같으므로 true를 return 합니다. 입출력 .. 2020. 7. 4.
[python] sorting Key Functions총 정리 [python 공식 문서] Sorting HOW TO — Python 3.8.4rc1 documentation Sorting HOW TO Author Andrew Dalke and Raymond Hettinger Release 0.1 Python lists have a built-in list.sort() method that modifies the list in-place. There is also a sorted() built-in function that builds a new sorted list from an iterable. In this documen docs.python.org sort와 sorted는 정렬 시 비교 기준이 되는 key parameter를 가질 수 있다. sorted("Th.. 2020. 7. 4.
[python] sort sorted 총 정리 sort와 sorted는 둘 다 정렬하는 함수다. sort와 sorted의 차이부터 알아보자. sort는 리턴값이 없지만 sorted는 새로운 리스트를 리턴한다. li = [3, 2, 1] print(li.sort()) print(sorted(li)) None [1, 2, 3] 또한, sort는 list의 값들을 변경시키지만 sorted는 list의 값들을 변경시키지 않는다. sort 함수 li = [3, 2, 1] li.sort() print(li) [1, 2, 3] sorted 함수 li = [3, 2, 1] sorted(li) print(li) [3, 2, 1] sorted 함수는 시퀀스 자료형 뿐만 아니라 순서에 구애받지 않는 자료형에도 적용할 수 있다. sort 함수 string = "hello.. 2020. 7. 3.
[프로그래머스] 문자열 내 마음대로 정렬하기 문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1의 문자 u, e, a로 strings를 정렬합니다. 제한 조건 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 입출력 예 strings n return [sun, bed, car] 1 [car.. 2020. 7. 3.
[python] sum max min 총 정리 [sum max min] 3개 모두 리스트에서 사용이 가능하다. sum은 리스트의 값들을 더하는 기능을 한다. max는 리스트에서 최댓값을 구하는 기능을 한다. min은 리스트에서 최솟값을 구하는 기능을 한다. ... 너무 당연하다 실습을 통해 확인해 보자. sum li = [1, 2, 3] result = sum(li) print(result) >> 6 1+2+3이므로 6이 나온다. sum 함수는 안에 range로도 사용이 가능하다. result = sum(range(1,4)) print(result) >> 6 위에 있는 코드와 같은 기능을 한다. sum 함수는 리스트에 있는 값들을 더하는 기능을 한다. max li = [1, 2, 3] result = max(li) print(result) >> 3 .. 2020. 7. 3.
[Python] Visual Studio Code 개발 환경 구축하기 Visual Studio Code를 지인에게 추천받아 한 번 써보는 김에 포스팅을 한다. python 설치하기 Visual Studio Code를 실행했을때의 화면이다. 왼쪽에 빨간색으로 되어 있는 아이콘을 클릭하자. python을 검색하면 맨 위에 Python이 있고 Install을 눌러 설치해주면 된다. Reload Required가 뜨면 다시 클릭해 주면 된다. (VsCode 버전에 따라 나오지 않을 수도 있다.) 위에 처럼 뜬다면 성공적으로 설치가 된것이다. python 코딩하기 왼쪽 맨 위에 File - New File을 통해 새로운 파일을 만들 수 있다. 새로 만들어진 파일에서 우측 클릭을 하면 Save As..로 파일명을 정할수 있는데 HelloWorld.py로 저장을 하자. print("H.. 2020. 7. 3.