Language/Python

[Python] 파이썬 lambda 란?

이번 시간에는 파이썬 알고리즘을 풀 때, 그중에서도 정렬 문제를 풀 때 많이 보게 되는 lambda에 대해서 간단하게 정리해보려고 한다. lambda 란? lambda는 그리그 문자 중 11번째 글자이고, AWS서비스 이름으로도 사용되고 많은 프로그램에서도 사용되고 있다. 파이썬에서의 lambda는 런타임에 생성해서 사용할 수 있는 '익명 함수' 이다. 함수형 프로그래밍 언어에서의 lambda와 같은 건 아니지만 map(), filter(), sort() 등에서 많이 사용되는 기능이다. lambda는 쓰고 버리는 일시적인 함수이다. 즉, 간단한 기능을 일반적인 함수와 같이 정의해두고 쓰는 것이 아니고 필요한 곳에서 즉시 사용하고 버릴 수 있기 때문에 코드가 간결해지고 메모리가 절약된다. lambda 사용..

2021.09.01 게시됨

자료구조 & 알고리즘/프로그래머스(programmers)

[programmers] 뉴스클러스터링(2018 카카오 블라인드 채용)

https://programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr 이 문제는 카카오 코딩 테스트 1번 문제답게 문자열을 다루는 문제이다. 먼저 숫자 또한 기호를 제외한 알파벳 소문자, 대문자 만을 담아두는 리스트를 입력값 str1, str2 각각 2개를 만들어서 소문자, 대문자만 2개씩 끊어서 다중집합의 원소로 만들어준다. 그리고 str1_list 와 str2_list를 대문자 소문자 상관없이 비교해주기 ..

2021.08.30 게시됨

자료구조 & 알고리즘/백준(Baekjoon)

[백준 ] 2225(파이썬) - 합분해

https://www.acmicpc.net/problem/2225 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 이 문제를 처음 읽고 든 생각은 'dp로 풀어야겠다' 였다. 바텀업 방식을 이용해서 풀었다. 나는 dp는 웬만한 문제는 일단 표를 그려서 적어보고 규칙을 찾는 방법으로 푼다. 이 방식도 n,k 두 개의 변수로 구현하는 거니까 2차원 배열의 dp 리스트를 만들어준다. 위와 같이 규칙을 찾으니까 dp [i][j] = dp[i-1][j] + dp[i][j-1] 라는 점화식이 나왔고 2중 for문에 적용시켜주면 된다. import sys input = sys.stdin.readline n,k = map(int,input().spl..

2021.08.28 게시됨