일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 물채우기
- 성적평가
- upper_bound
- 매개변수탐색
- 처우협의
- 연결요소
- dfs
- softeer
- BOJ
- 백트래킹
- Kafka
- 백준
- msSQL
- 기술면접
- 13908
- 6987
- 퇴사통보
- BFS
- 오퍼레터
- 파라메트릭
- OFFSET
- 이분탐색
- @P0
- 경력
- 처우산정
- incr
- compose
- 소프티어
- boj #19237 #어른 상어
- Docker
- Today
- Total
목록전체 글 (633)
기술 블로그
https://www.swexpertacademy.com/main/solvingProblem/solvingProblem.do 저번 코드 : https://hsdevelopment.tistory.com/45 다시 풀어보았다. 처음에 시간 초과 나길래 이유가 뭔가 했더니 하나의 점에 대하여, BFS를 몇 십 번이나 반복하고 있었던 것이었다.그리고 각 그 경우마다 처음부터 끝까지 BFS를 또 돌리고 있었다.(아래 짧은 코드 참고)12345for(int k = 0; k
https://programmers.co.kr/learn/courses/30/lessons/43162 기초적인 DFS 문제이다. 1234567891011121314151617181920212223242526272829303132333435363738#include using namespace std; vector v[201]; bool visit[201] = { false, }; void dfs(int start){ visit[start] = true; for (auto i : v[start]) if (!visit[i]) dfs(i);} int solution(int n, vector computers) { int answer = 0; for (int i = 0; i
https://www.crocus.co.kr/1090 https://kks227.blog.me/220810623254
https://www.acmicpc.net/problem/tag/MCMF
https://www.acmicpc.net/problem/13460 지난 번 코드 : https://hsdevelopment.tistory.com/3 다시 풀어보았다. 계속 10 초과의 숫자들이 출력되길래 이상했었다. 85번 째 줄의 if문이 무시되는 상황이었다. 알고보니 쓰레기 값이었다. 그래서 88번 째 줄을 추가해줬더니 통과되었다. 핵심은 빨간 구슬, 파란 구슬 둘 다 O의 위치에서 계속 있으면서 queue가 empty() 될 때 까지 return하지 않는 것이다. 그래야 88번 째 줄에 의해 return -1;이 될 수 있다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525..
https://www.acmicpc.net/problem/1958 3차원으로 확대되었다. 기본적인 구현 방식은 일반적인 2개의 문자열에 대한 LCS와 같다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576#include using namespace std; int lcs[101][101][101] = { 0, }; string str1, str2, str3; int main(void){ string input1, input2, input3; cin >> input1 >> input2 >> input..
https://www.acmicpc.net/problem/5582 LCS 알고리즘하고 비슷했다. 다만, 나는 LCS처럼 접근하려고 표를 그리면서 구현하였었는데 즉, LCS처럼 값을 누적하면서 표를 작성하였는데, 같을 때의 처리가 애매해서 다른 코드를 참고하였다. 그 코드는 아래의 표처럼 오직 같을 때만 [행-1][열-1]의 값에 +1을 해주었다. 생각해보니 공통 부분 문자열의 최댓값을 구하는 것이므로 따로 누적(?)할 필요가 없었다. 초록색이 답이다. 1234567891011121314151617181920212223242526272829303132333435#include using namespace std; int dp[4040][4040] = { 0, }, answer = 0; string str1..
https://www.crocus.co.kr/787