| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Kafka
- 파라메트릭
- boj #19237 #어른 상어
- upper_bound
- 연결요소
- 처우산정
- 기술면접
- 물채우기
- @P0
- dfs
- 처우협의
- softeer
- 백트래킹
- 백준
- BFS
- 오퍼레터
- OFFSET
- Docker
- 6987
- 성적평가
- 소프티어
- 경력
- msSQL
- BOJ
- incr
- compose
- 13908
- 퇴사통보
- 이분탐색
- 매개변수탐색
- Today
- Total
목록전체 글 (633)
기술 블로그
https://www.acmicpc.net/problem/17208
https://www.acmicpc.net/problem/17274
https://www.acmicpc.net/problem/1254 다시 풀어볼 팰린드롬 만들기 문제이다. 복습! 12345678910111213141516171819202122232425262728#include using namespace std; string s; bool isPalindrome(int idx){ for (int i = 0; idx + i s; printf("%d\n", solution()); return 0;}Colored by Color Scriptercs
https://www.acmicpc.net/problem/2150 scc(강한 연결 요소) 문제이다. 익숙해지도록 복습하고, 다시 풀어보자. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081#include using namespace std; #define Max 10001 int id, n[Max];bool visit[Max];vector v[Max];vector scc;stack s; int dfs(int start){ n[start] = ++id; s.push(start); i..
https://www.acmicpc.net/problem/17213 다시 한 번 풀어보고, 복습할 문제이다. 즉, 생각해볼 문제이다. 복습! 백트래킹으로 풀었다. 그런데 아래 두 코드가 시간 차이가 꽤 났다. 여하튼 핵심은 두 코드 모두 nHr을 n+r-1Cr = n+r-1Cn-1로 바꾼 후에 진행하는 것이다. 그런데 첫 번째 코든느 vector size로 인해 시간이 꽤 걸렸다. vector의 size()가 시간이 꽤 걸리나보다. 정답이긴 하지만 시간이 오래 걸림 123456789101112131415161718192021222324252627282930313233343536373839404142#include using namespace std; int ans, N, M; void c(vector v..
참고 및 출처 : https://www.crocus.co.kr/1089?category=209527 [Crocus] SPFA (Shortest Path Faster Algorithm) 1. 벨만포드 알고리즘의 성능을 향상시킨 알고리즘 2. SPFA는 음수 간선에도 문제없이 돌아가기 때문에 MCMF에서 자주 쓰인다. 3. 벨만포드는 모든 간선에 대해 업데이트를 진행하지만,SPFA는 바뀐 정점과 연결된 간선에 대해서만 업데이트를 진행한다는 것이다. 4. 바뀐 정점은 큐를 이용해서 관리하고, 큐에 해당 정점이 있는지 없는지는 배열을 이용해서 체크한다. 활용 문제 : https://www.acmicpc.net/problem/11657 벨만포드 알고리즘으로 푼 타임머신 문제1234567891011121314151..
https://www.acmicpc.net/problem/10835 처음에 단순 백트래킹으로 풀다가 시간 초과 났다. 그래서 다른 분의 코드를 보니 cache를 사용한 것에 힌트를 얻어 구현해보았다. cache를 깜빡하고 있었다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#include using namespace std; int n, cache[2002][2002]; vector l, r; int simulation(int left_idx, int right_idx){ if (left_idx == n || right_idx == n) return 0; int &get = cache[le..
https://programmers.co.kr/learn/courses/30/lessons/42898 예제를 아래처럼 엑셀에서 내 나름의 생각대로 숫자를 적으면서 보니 어떤 한 정점 기준으로 그 정점의 윗 칸과 왼쪽 칸을 더하였더니 아래처럼 나왔고, (n, m)=(행, 열)=(3, 4)의 칸의 숫자가 4여서 혹시나해서 구현해서 제출하였고 한 번에 맞았다. 솔직히 틀릴 줄 알았다. 12345678910111213141516171819202122232425262728293031323334353637#include using namespace std; #define Mod 1000000007 int Map[111][111] = { 0, }, dp[111][111] = { 0, }; int solution(in..