일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- mst
- 문자열
- java
- 알고리즘
- BFS
- 백준
- 이분탐색
- 플로이드-와샬
- 스택
- 에라토스테네스의 체
- 유니온 파인드
- swea
- 그리디
- 수학
- Effective Java
- 완전탐색
- 백트래킹
- 후니의 쉽게 쓴 시스코 네트워킹
- dfs
- Network
- JUnit 5
- 프로그래머스
- Kotlin
- 시뮬레이션
- 위상정렬
- 동적계획법
- CS
- 세그먼트 트리
- 구현
- 투 포인터
목록알고리즘 (240)
반갑습니다!
1913번: 달팽이 boj.kr 풀이 재귀함수를 사용해서 어렵지 않게 구현할 수 있었다. 규칙을 잘 보면 바깥 사각형부터 안쪽으로 갈수록 길이가 2씩 줄어든다는 것을 알 수 있다. 그리고 사각형에서 가장 큰 수의 좌표를 (x, y)라고 하면, 사각형이 줄어들수록 (x+1, y+1)에 가장 큰 수가 있는 것을 알 수 있다. 이런 점을 이용해서 함수를 정의해 사각형의 길이 - 1 만큼의 길이를 for문을 사용해 4번 반복해주었다. 그리고 사각형의 길이를 2씩 줄여가며 재귀 호출해주었다. 코드 Python3
2302번: 극장 좌석 boj.kr 풀이 VIP 회원들에 대해 생각하기 전에 일반 회원들을 먼저 생각해보자. 우선 1명의 회원이 좌석에 앉는 방법을 생각해보자. 1명의 회원이 앉을 수 있는 방법은 1가지인 것은 당연할 것이다. 이번엔 2명의 회원이다. 1, 2 / 2, 1 이렇게 총 2가지 방법으로 앉을 수 있다. 다음엔 3명의 회원인 경우이다. 1, 2, 3 / 1, 3, 2 / 2, 1, 3 총 3가지 방법이 나온다. 4명의 회원의 경우는 1, 2, 3, 4 / 1, 2, 4, 3 / 1, 3, 2, 4 / 2, 1, 3, 4 / 2, 1, 4, 3으로 총 5가지가 나온다. 4명의 회원인 경우를 조금 더 자세히 살펴보자. 1, 2, 3, 4 1, 2, 4, 3 1, 3, 2, 4 2, 1, 3, 4 ..
1976번: 여행 가자 boj.kr 풀이 이 문제에서 동혁이의 여행 계획을 달성하기 위해서 최단 거리로 이동할 필요가 없다. E C B C D가 계획이라면 도시 사이에 다른 곳을 경유해도 된다는 의미이다. 따라서 이 문제는 결국 여행 계획을 세운 도시들이 같은 그래프에 속해있는지 파악해서 모두 같은 그래프에 속해있으면 YES, 다른 그래프에 속해있으면 NO를 출력하는 문제가 된다. 아래의 코드에서 같은 그래프에 속해있는지는 유니온 파인드를 사용해서 구분했다. 코드 C++ Python3
1005번: ACM Craft boj.kr 풀이 작업 문제와 거의 동일한 문제이다. 위상 정렬과 동적 계획법을 이용해 각 건물에서의 최대 건설 시간을 계속해서 갱신해주면 해결할 수 있다. 코드 C++