일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- dfs
- 백준
- 게리멘더링2
- AVL 시간 복잡도
- 구현
- c#
- 백준 2447
- qorwns
- 백준 1406
- ㅣ풀이
- 자료구조
- 스택의 특징
- 백준 17779
- 백준 5397
- Stack 이란
- 백준 17471
- 5397
- 별 찍기 10
- 해시구현
- 원판 돌리기
- 조세퍼스 순열
- C/C++ 구현
- 백준 1158
- 1764
- 백준 17822
- heap
- 버킷 정렬
- 시간 복잡도
- 해시 구현
- 풀이
- Today
- Total
목록전체 글 (286)
홍시홍의 프로그래밍
요구사항 중복을 허용하여 n개 중 m개를 뽑는다 참고 n개 중 m개를 뽑느데 현재 index보다 전에 있는 원소는 뽑을 수 없다 1. dfs를 이용하여 문제를 푼다 -> 중복을 허용함으로 dfs 진입 시 현재(now)부터 끝까지 탐색할 수 있도록 한다 -> 현재(now)부터 끝은 for 안에는 진행되는 루틴이다 풀이 n,m=map(int,input().split()) visit=[0]*100 my_vec =[] def Com(now, cnt): if(cnt==m): for i in my_vec: print(i,end=' ') print() return for i in range(now,n+1): #방문 여부 체크안하고 그냥 바로 현재 원소부터 dfs로 탐색할 수 있도록 한다 #if(visit[i]==0)..
요구사항 중복을 허용하지 않고 n개중 m개를 뽑아서 출력하기 참고 다양한 문제 풀이법이 존재한다 1. 재귀를 통해 출력한다 -> 첫번째 부터 마지막 까지 방문하면서 정답 배열에 넣어준다 -> m만큼의 길이 만큼 왔으면 출력한다 2. permutation 모듈을 이용한다 -> n개 중 m개를 뽑는데 순서가 상관있게 뽑는 것은 순열이다 -> permutation 뽑은 후 출력한다 두 풀이 다 재밋으나 파이썬 스럽게 푸는 것은 2번째 풀이이다 풀이1 import sys n,m = map(int,input().split()) visit =[0]*10 my_vec=[] #dfs를 이용하여 n개중 m개(cnt) 뽑으면 출력한다 def Com(now, cnt): if(cnt==m): for i in my_vec: p..
요구사항 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000) xi와 yi 두개가 주어졌을때 1. x에 대해서 오름차순 2. xi, yi가 같을때, yi에 대해서 오름차순으로 정렬 참고 파이썬에서는 key를 통해 내가 원하는 방식으로 정렬가능하다. Default는 오름차순으로 정해져 있다 정렬을 활용하는 방법은 아래와 같다. arr.sort(key = lambda x: (x[0], x[1])) 또한, 파이썬에서는 from functools import cmp_to_key 모듈을 활용하여 내가 원하는 방식으로 정렬도 가능하다 sort(arr, key=cmp_to_key(함수))의 형태로 가능하며 내가 원하는 함수를 직접작성하여 사용한다 풀이 import sys input = sys.stdin.readl..
요구사항 산술평균 : N개의 수들의 합을 N으로 나눈 값 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 최빈값 : N개의 수들 중 가장 많이 나타나는 값 범위 : N개의 수들 중 최댓값과 최솟값의 차이 나타내기 참고 파이썬 특징 1. 나누기 실행하면 double형태로 반환한다 2. 몫을 원하는 나누기를 원하면 //를 사용한다 3. 최빈값은 Counter모듈을 이용하면 쉽게 구할 수 있다 풀이에 보면 중간에 Counter 모듈을 import한 것을 볼 수 있다 파이썬 대화형 형식으로 제일 처음 만들어졌다 그래서 중간에서 import하여 사용하는 것도 가능하다 most_commons은 dic형태로 반환한다 key : value * 파이썬의 연산 특징을 파악하고 있어야지 쉽게 ..