일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 13908
- 파라메트릭
- compose
- boj #19237 #어른 상어
- Docker
- softeer
- 백트래킹
- BOJ
- 연결요소
- 오퍼레터
- msSQL
- Kafka
- 물채우기
- 처우산정
- incr
- 6987
- upper_bound
- 퇴사통보
- 백준
- OFFSET
- 경력
- 처우협의
- 소프티어
- @P0
- BFS
- dfs
- 매개변수탐색
- 이분탐색
- 기술면접
- 성적평가
- Today
- Total
목록전체 글 (629)
기술 블로그
최대 힙 구현 문제이다. 구현 과정, 논리(로직)를 익숙해지도록 구현해봐야겠다. https://www.acmicpc.net/problem/11279 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798#include #include #include #include #include #include #include #include using namespace std; vector heap; // 정수를 담는 최대 힙 heap에 새..
백트래킹 문제이다. 이 문제에서 기억해야할 것1. 그 다음 숫자를 더하는 경우, 안 더하는 경우 2가지 모두 생각해야한다. https://www.acmicpc.net/problem/1182 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657#include #include #include #include #include #include #include #include using namespace std; int N = 0, S = 0; int num[21] = { 0, }; int ans = 0; void DFS(int sum, int pos){ if (pos == N)..
백트래킹으로 풀어야 하는 문제이다. 문제 설명 : 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 핵심은 used의 사용이다. https://www.acmicpc.net/problem/15649 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include #include #include #include #include #include #include #include using namespace std; bool used[9] = { false, }; int N = 0, M = 0; void DFS(vector vc, int cnt){ if (cnt == M) { f..
BFS 문제이다. 'L'의 위치를 position에 담아 놓고, BFS 내에 있는 queue에 push 후에 바로 position을 pop하는 식으로 순서대로 L의 갯수 만큼 BFS를 실행하면 된다. 71번 째 줄에 +1을 한 이유는 dist 배열의 초기값은 -1이기 때문이다. 이 문제에서 기억해야할 것1. 방문 여부를 굳이 visit를 써서 할 필요가 없다. 거리 그 자체(dist)를 해도 된다. https://www.acmicpc.net/problem/2589 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727..
Simulation 문제다. 내가 너무 무식하게 푼 것 같아서, 코드가 좀 더럽다. 핵심은 칸을 이동할 때, 예를 들어 원래 있던 칸을 x라고 하고, x + 3이 목표라고 하면 x + 1 비교, x + 2 비교 ... x + i 이렇게 하나씩 비교를 해야한다. https://www.acmicpc.net/problem/2174 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710..
문제 : https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpLlKAQ4DFAUq 해설 : https://www.swexpertacademy.com/main/learn/course/subjectDetail.do?subjectId=AV7HLJ66CZIDFAXB 처음에 DFS로 풀다가, 실행을 하면서 테스트 케이스과 그림을 확인해보니, DFS로 풀면 안 된다는 것을 깨달았다. 그래서, BFS로 풀었다. 난이도는 쉬웠다. BFS를 진행하면서 2가지만 확인해주면 됐다. 1. map[행][열]이 0인 곳은 가지 않는다.2. 상황에 따라 현재 있는 터널 구조물에서 다음 위치(상, 하, 좌, 우)에 있는 터널 구조물..
엄청 어려운 문제였다.(내가 못 하는건 비밀) 아마 며칠 동안 풀어도 못 풀었을 것이다. 어쩔 수 없이 강의들으면서 코드를 작성하였다. 이 문제를 통해 기억해야할 것1. 문제를 풀기 전에 설계를 잘 하자.2. 배열을 잘 활용하자 https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5-BEE6AK0DFAVl 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909..
※ 이 글의 모든 문제와 사진, 자료 등은 SW Expert Academy에 있음을 말씀드립니다. 문제 : https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV18TrIqIwUCFAZN 풀이 : https://www.swexpertacademy.com/main/learn/course/lectureVideoPlayer.do 처음에 아무런 생각없이 단순히 DFS로 방문한 정점부터 출력하는 줄 알았는데 그게 아니었다. 예를 들어, 아래와 같은 노드들이 있다고 하자. 우리가 원하는 답은 8, 9, 4, 1, 5, 2, 3, 7, 6 이거나 4, 1, 2, 3, 8, 5, 7, 6, 9 이다. 4, 1, 2, 3, 8..