일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- LEVEL2
- 구현
- 9252
- gold2
- error
- LCS
- AWS
- java
- leetcode 69
- mysql
- 개념
- Gold4
- spring
- 백엔드
- Kakao
- 프로그래머스
- glod5
- LEVEL1
- Thymeleaf
- HTML
- glod4
- siver3
- PYTHON
- jpa
- 배포
- gold5
- 오류
- CSS
- 백준
- leetcode
- Today
- Total
목록algorithm (78)
이 험난한 세상에서어어~
문제 설명 치킨 집 중 총 m개만을 남겨둔 상태로 도시의 치킨 거리의 최솟값을 구하는 문제다. 문제가 이래저래 복잡하니 백준에 가서 문제 이해를 한 뒤 풀이를 보는 걸 추천한다. https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 문제 풀이 첫 번째 접근 1. 기본적인 셋팅 문제를 풀 때 제일 먼저 생각했던 건 현재 도시에 있는 치킨 집의 위치를 알아야 겠다는 것이었다. 그렇기에 값을 받아 2차원 배열로 돌리면서 2가 있으면 ..
문제 설명 0이 들어 있는 칸에 총 세 개의 벽인 1을 세워서 바이러스가 퍼진 후 남은 0의 최대 갯수를 세는 문제다. https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 문제 풀이 첫 번째 접근 이번에도 총 세 가지 순서로 문제에 접근했다. 1. 벽을 세 개 세운다. 0이 있는 부분에 벽을 세우는데, 이는 재귀함수를 이용해서 풀었다. count가 3이 되기 전까지 벽을 세우는데, 중요한 점은 return을 한 다음에 세운 벽을 0으로 되돌려 줘야 한다는 거다..
문제 설명 방향과 칸의 개수가 주어졌을 때, 경로에 장애물이 없거나 범위를 벗어나면 움직인다. 만일 장애물이 존재하거나 범위를 벗어난다면 해당 움직임은 철회한다. 이렇게 해서 마지막으로 도달하는 위치를 구하는 문제다. https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 첫 번째 접근 지금까지 풀어왓던 구현의 이동 문제와 크게 다르지 않다. 처음에는 시작 위치를 확인한다. 그리고 주어진 명령을 한 번씩 확인하는데, 북쪽이면 위로 올라가고..
문제 설명 반시계 방향 90도로 돌면서 청소할 수 있는 칸이면 로봇이 청소를 한다. 청소가 가능한 칸은 총 몇 개인지 구하는 문제이다. 이 과정을 간단하게 아래에 설명해 보겠다. 1. 현재 칸이 청소되지 않았다면 청소한다. 2. 현재 칸을 기준으로 사방에 청소할 수 있는 칸이 있는지 확인한다. 2-1. 청소할 수 있는 칸이 있다면 2-1-1. 90도로 회전한 뒤 바라보는 방향을 기준으로 한 칸 앞에 청소 할 수 있는지 확인한다. 2-1-1-1. 청소할 수 있다면 1로 돌아간다. 2-1-1-2. 청소할 수 없다면 2-1-1로 돌아간다. 2-2. 청소할 수 있는 칸이 없다면 2-1-1. 한 칸 뒤로 갈 수 있으면 한 칸 뒤로 간 후 1로 돌아간다. 청소한 곳도 갈 수 있다. 2-1-2. 만일 벽에 막혀 갈 ..
문제 설명 문제가 굉장히 긴데, 간단하게 말하자면 콜라 a병 만큼을 가져가면 b 병만큼 돌려줄 때, 얼마나 많은 콜라를 돌려받았는지 계산하는 문제다. 특정한 알고리즘을 쓰는 게 아니라 단순 계산 문제라고 할 수 있다. https://school.programmers.co.kr/learn/courses/30/lessons/132267 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 첫 번째 접근 일단 n보다 a가 작으면 돌려받을 만한 콜라 병의 수를 체울 수 없기 때문에 0을 반환한다. 그리고 반복문을 돌리는데, 만일 위의 조건에 해당하면 탈출하도..
문제 설명 문자열 t와 p가 있다. 여기서 p만큼의 길이를 가진 t의 부분 문자열이 정수형으로 변환했을 때 더 작으면 answer에 값을 하나씩 올려준다. https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 첫 번째 접근 문자열 t를 p만큼 잘라서 확인을 해주면 되는 문제였다. 여기서 조심해야 할 점은 바로 인덱스 오류. 그렇기에 제일 마지막에 검사할 것은 len(t) - len(p) + 1로 끝을 정해주면 된다. 문자열을 시작 부분 ..