일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- BOJ
- 소프티어
- 기술면접
- 처우협의
- 매개변수탐색
- 물채우기
- 퇴사통보
- @P0
- incr
- boj #19237 #어른 상어
- compose
- 백준
- 백트래킹
- 6987
- 13908
- upper_bound
- Kafka
- 경력
- 오퍼레터
- softeer
- BFS
- 처우산정
- 연결요소
- 성적평가
- 파라메트릭
- dfs
- msSQL
- 이분탐색
- OFFSET
- Docker
- Today
- Total
목록알고리즘 문제 (501)
기술 블로그
https://www.acmicpc.net/problem/16954 # 복습 # 추천 # bfs # 필수 # 코딩 # 코테 # 구현 # 생각 3차원 방문 visit 배열을 활용하는 문제이다. 주의할 점은 현재 위치에 서 있을 때는 방문 처리 여부와는 상관 없이 무조건 queue에 넣어야 한다. 이유는 어떠 한 경우에서 (r, c)에서 현재 위치에 서 있었을 때, 방문 처리를 하면, 다른 경우에서 (r, c)에 대해 그 자리에 있을 수 없다. 이 외에는 방문 처리를 이동 방향에 따라 표시해준다. visit[행][열][이동 방향] = 어느 방향에서 (행, 열)로 왔는지 방문 처리 123456789101112131415161718192021222324252627282930313233343536373839404..
https://www.acmicpc.net/problem/11967 # 복습 # 추천 # bfs # 필수 # 코딩 # 코테 # 구현 # 생각 처음에는 단순히 현재 위치(x, y)에서 킬 수 있는 방을 모두 키고, 모두 방문하는 식으로 구현하였으나, 틀렸다. 왜냐하면, 불을 켜도 방문할 수 없는 방이 있기 때문이다.(상, 하, 좌, 우로만 이동) 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104..
https://www.acmicpc.net/problem/18430 # 탐색 # dfs # 복습 # 구현 # 브루트포스 # 추천 # 코딩 # 코테 # 백트래킹 # back 백트래킹 문제이다. 현재 좌표에서 방문하는 경우, 방문하지 않는 경우까지 모두 고려해준다. 나머지는 주석 참고 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116..
https://www.acmicpc.net/problem/3019 # 테트로미노 # 테트리스 # 복습 # 구현 # 브루트포스 # 추천 # 코딩 # 코테 처음에는 각각의 도형을 회전을 한 모양을 2차원 배열로 모두 나타냈었는데 이렇게 접근할 필요가 없었다. 부여한 높이들의 인접 차이와 입력으로 주어진 높이들의 인접 차이의 비교가 핵심이다. 56, 59번째 줄 범위 주의하자.(인덱스 범위 주의) 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586#include using..
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AW9j-qfacIEDFAUY 복습 캐시 메모이제이션 배낭 cache dp 다이나믹 코딩 코테 추천 가로로 계속 자르고, 끝까지 가로로 잘랐으면,되돌아 오면서 세로로 자른다. 이 때, 최솟값을 유지하도록 한다. 24번째 줄처럼 작성하지 않으면, 시간 초과가 발생한다. 연두색 넓이 = 24번째 줄 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374#include using n..
https://www.acmicpc.net/problem/18310 # 복습 # 추천 # 필수 # 코딩 # 코테 # 구현 # 생각 # 이분 탐색 # 중앙값 # 정렬 Greedy 문제인줄 알았는데 이분 탐색으로 접근했더니 풀렸다. 이 문제는 이분 탐색으로 풀기에는 비효율적이다. 어느 분께서 처음 회차 이후에는 무조건 앞부분만 보게 되는데 뒷쪽을 탐색하지 않아도 되나요? 라고 질문을 해주셨는데, 솔직히 확실하게 알지 못 하여 따로 질문을 통해 알아냈다. 결론은 내 코드가 비효율적이다. 정렬 후 [ {0 + (n - 1)} / 2 ]가 답인데, 내 코드에서는 처음 진행할 시에 Start = 0, End = n - 1 이므로, mid가 정답과 정확히 일치하는 (n - 1) / 2이기 때문에 그대로 출력되는 것이..
https://www.acmicpc.net/problem/18286 뭔가 dp + Bitmask 문제 같다. 안 풀림.
https://www.acmicpc.net/problem/2504 # 복습# 코테# stack# 스택# 자료구조# 자구# 큐# queue 스택(Stack) 활용 문제다. 나눗셈은 생각 못 했다. 내 코드에서는 굳이 calc라는 변수를 활용하지 않고, s.charAt(i-1)과 s.charAt(i)가 서로 (), []일 때만 answer += temp 해줘도 된다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768import java.io.*;import java.util.*; public class Main { static in..