일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 파이썬입출력
- promise
- 파이썬문법
- django
- clone coding
- 자바스크립트
- 알고리즘
- QuerySet
- docker
- 파이썬
- clone-coding
- 윈도우우분투듀얼부팅
- 파이썬리스트컴프리헨션
- 코딩테스트파이썬
- decorator
- Python
- bcrypt
- 해시충돌
- 리스트컴프리헨션
- 인증인가
- wecode
- 인터넷 네트워크
- CSS
- DP
- *args
- RESTfulAPI
- **kwargs
- JavaScript
- 자료구조
- 백준
- Today
- Total
목록TIL/알고리즘 with 파이썬 (17)
개발기록장
파이썬 내장 모듈인 itertools를 활용하여 순열과 조합, 중복 순열을 쉽게 구현할 수 있다. 순열과 조합은 재귀 함수나 반복문을 이용해서 직접 구현할 수도 있지만, 코딩테스트에서 직접 구현하는 것은 번거롭기도 하고, 라이브러리를 사용하는 것이 훨씬 속도도 빠르다. 1. 순열 - 순열이란? 서로 다른 n개에서 r개를 선택하여 일렬로 나열하는 것을 말한다. 뽑힌 순서대로 나열하기 때문에 순서가 의미가 있다. 즉, 같은 값이 뽑히더라도 순서가 다르면 다른 경우의 수로 취급한다. 예를 들어 (1, 2)와 (2, 1)은 다른 것으로 취급한다. - itertools 라이브러리의 permutations 함수를 이용한 코드 구현 from itertools import permutations data = [1, 2..
www.acmicpc.net/problem/11055 11055번: 가장 큰 증가 부분 수열 수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수 www.acmicpc.net 문제 수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수열은 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 이고, 합은 113이다. 입력 첫째 줄에..
www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 문제 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. 입력 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,0..
www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 문제 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않는다. 이친수에서는 1이 두 번 연속으로 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다. 예를 들면 1, 10, 100, 101, 1000, 1001 등이 이친수가 된다. 하지만 ..