SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제풀이 어느 사다리를 고르면 X표시에 도착하는지 구하는 문제다. y = 0에서 X표시에 도착하는 사다리를 찾으려면 어려울 수 있지만 X표시에서 y = 0인 출발점으로 도착할 수 있는 사다리를 구하는 것은 쉽다. y = 99에서 위로 올라가면서 왼쪽과 오른쪽으로 이동할 수 있는 칸이 있는지 확인한다. 이동할 수 있는 가로선이 있다면 이동하면 되는데 한쪽 방향으로만 이동할 수 있다는 것을 주의해주자! 왼쪽으로 이동했으면 왼쪽으로만 가야지 왼쪽 갔다가 오른쪽으로 가면 안된다. 위 과정을 반복하다가 y = 0에 도착하면 사다리를 찾은 것이다! 문제에서는 행을 y, 열을..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제풀이 100 X 100 크기의 2차원 배열이 주어질 때, 그림과 같이 각 행의 합, 각 열의 합, 각 대각선의 합 중 최댓값을 찾는다. 각 행의 합, 열의 합은 쉽게 구할 수 있을 것이라 생각한다. 오른쪽 아래로 향하는 대각선은 i == j, 왼쪽 아래로 향하는 대각선은 i + j == 99인 원소를 더해주면 된다. 코드 C++ 코드 Java 코드
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제풀이 그림과 같이 노란색 상자들이 쌓여있다. 높은 곳의 상자를 낮은 곳에 옮기는 방식으로 최고점과 최저점의 간격을 줄이는 평탄화 작업을 하려고 한다. 제한된 작업 횟수 동안 평탄화 작업을 수행하고 최고점과 최저점의 차이를 구하는 문제다. 가장 높은 곳에 있는 상자를 가장 낮은 곳으로 옮기는 작업을 덤프라고 한다. 1회 덤프 때 A에 있는 상자를 B부분에 덤프하였다. 2회 덤프 수행 시에는 A에 있는 상자를 C부분에 덤프하였다. 덤프 횟수가 2회로 제한되어 있다면 정답은 6이 된다. 주어진 덤프 횟수 이내에 평탄화과 완료되면 덤프 작업을 멈추고 최고점과 최저점의..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제풀이 그림과 같이 빌딩들이 지어져 있다. 이 지역에서는 왼쪽과 오른쪽으로 창문을 열었을 때, 양쪽 모두 거리 2 이상의 공간이 확보될 때 조망권이 확보된다고 말한다. 빌딩들에 대한 정보가 주어질 때 조망권이 확보된 세대의 수를 찾는 문제다. 양쪽 모두 거리 2 이상의 공간이 확보된다면 조망권이 확보되므로 2 이하의 거리들만 확인해주면 된다. 양쪽 건물들 중에서 현재 건물의 높이보다 큰 건물이 있다면 조망권 확보 실패 현재 건물보다 높이가 낮은 건물들 중 제일 높은 건물과의 높이 차이를 계산하면 조망권이 확보된 세대의 수를 찾을 수 있다! 코드 C++ 코드 Ja..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제풀이 10개의 테스트 케이스마다 테스트 케이스 번호, 1000명의 점수가 주어진다. 최빈수를 찾기 위해서 cnt 배열에 각 점수가 몇 번 나타나는지 카운트해준다. 최빈수가 여러 개 일 때에는 가장 큰 점수를 출력하라고 했으므로 cnt[i]가 maxCnt 이상일 경우에 갱신해준다. 코드 C++ 코드 Java 코드
11265번: 끝나지 않는 파티 입력의 첫 번째 줄에는 파티장의 크기 N(5 ≤ N ≤ 500)과 서비스를 요청한 손님의 수 M(1 ≤ M ≤ 10,000) 이 주어진다. 각각의 파티장은 1번부터 N번까지 번호가 붙여져 있다. 다음에는 N개의 줄에 걸 www.acmicpc.net 문제풀이 플로이드 와샬에 대한 자세한 내용은 아래 포스팅을 참고해주세요:) 플로이드 와샬 알고리즘(Floyd Warshall Algorithm) 플로이드 와샬 알고리즘이란? '모든 정점'에서 '모든 정점'으로의 최단 경로를 구하는 알고리즘 다익스트라 알고리즘과의 차이점 다익스트라는 하나의 정점에서 다른 모든 정점까지의 최단 경 woojeenow.tistory.com 플로이드 와샬 알고리즘으로 각 파티장끼리의 최소 이동 시간을 구..
10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 문제풀이 적록색약이 아닌 사람이 봤을 때의 구역수를 DFS로 구할 때 초록색인 구역은 빨간색으로 바꿔준다. 그리고 다시 적록색약인 사람이 봤을 때의 구역수를 DFS로 구해준다. C++ 코드
10711번: 모래성 첫째 줄에는 모래성의 가로세로 격자 크기 H, W가 주어진다. (1 ≤ H, W ≤ 1,000) 그 다음 H줄에 걸쳐 W개의 문자로 모래성의 상태를 나타내는 문자가 들어온다. 각 문자는 1~9 사이의 숫자, 또는 '.' 이 www.acmicpc.net 문제풀이 처음 시도했을 때는 모래성을 모두 queue에 넣고 8방향을 모두 살펴 무너지는지 확인 후 무너지지 않는 모래성을 queue에 다시 넣어줬다. 결과는 시간초과.. 더보기 #include #include #define MAX 1001 using namespace std; int h, w; int map[MAX][MAX]; bool visited[MAX][MAX]; int dx[] = { -1, 1, 0, 0, -1, -1, 1,..
- Total
- Today
- Yesterday
- 구현
- 자바
- 문자열
- Java
- 투 포인터
- Kotlin
- 알고리즘
- 배열
- 브루트포스
- 두 포인터
- Two Pointer
- SWEA
- 그래프
- 프로그래머스
- 정렬
- SW Expert Academy
- BOJ
- 트리
- BFS
- C++
- 위상 정렬
- 이분 탐색
- programmers
- 백준
- 분할 정복
- 재귀
- 스택
- algorithm
- dfs
- 큐
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |