일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 성적평가
- 처우협의
- compose
- 연결요소
- 물채우기
- dfs
- Kafka
- 백준
- incr
- OFFSET
- boj #19237 #어른 상어
- 소프티어
- BFS
- 처우산정
- 6987
- softeer
- 파라메트릭
- @P0
- 퇴사통보
- upper_bound
- msSQL
- 13908
- 이분탐색
- 기술면접
- 경력
- 매개변수탐색
- 백트래킹
- Docker
- BOJ
- 오퍼레터
- Today
- Total
목록전체 글 (633)
기술 블로그
https://www.acmicpc.net/problem/1866 dp 다이나믹 동적계획 한국정보올림피아드 복습 필수 추천 코테 생각 prefix sum boj 백준 dp[i] = 1번부터 i번까지 택배를 배달했을 때 최솟값 그렇다면, dp[i]가 될 수 있는 것은 다음 2가지 경우가 있다. 1. i번 째를 택배로 배송 → dp[i] = dp[i - 1] + t * v[i](단, t는 거리에 비례하는 택배 배송비)2. j ~ i 사이에 임의의 k 점에 대하여 헬리콥터로 배송(단, j
https://www.acmicpc.net/problem/3079 이분 탐색 파라메트릭 서치 결정값 boj 백준 필수 복습 코테 코딩 최적화 공부 "이 시간(초) 동안 입국 심사를 모두 완료할 수 있는가?" 예제 1 설명에를 들어 30초 일 때,30 / 7 = 430 / 10 = 3-> 7명이다. m(6)보다 크므로 Right = mid(30) - 1로 하면서 계속 줄인다. 28초라고 할 때,28 / 7 = 428 / 10 = 26명이다. 계속 진행을 해보면 28이 최솟값임을 알 수 있다. 핵심은 1.해당 시간(Time) 동안 입국 심사대에서 입국 심사를 모두 완료할 수 있는 인원 수 = Time / 해당 입국 심사대에서 심사하는데 걸리는 시간 2.최댓값은 입력으로 주어진 입국 심사대에서 걸리는 시간 중..
https://www.acmicpc.net/problem/3020 이분 탐색 필수 정렬 lower_bound 복습 추천 upper_bound boj 백준 개똥 처음에 find를 활용했다가 시간 초과 발생. 그래서 lower_bound, upper_bound를 활용했더니 50% 쯤에서 틀렸음. 알고보니 처음에 58, 59번 째 줄 코드를 cnt != 0일 때만 실행되게 했었다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465#include using namespace std; int N;double H;vector up, down;map ..
https://www.acmicpc.net/problem/1301 dp 다이나믹 cache 캐시 복습 코테 코딩 필수 추천 boj 백준 동적 계획 아래 3개의 문제도 같이 풀어보길 꼭 추천한다. https://www.acmicpc.net/problem/14238 https://www.acmicpc.net/problem/14243 https://www.acmicpc.net/problem/12969 cache[a][b][c][d][e][f][g] : a는 1번 공의 현재 개수b는 2번 공의 현재 개수..e는 5번 공의 현재 개수f는 그 전의 공 번호g는 그 전전의 공 번호 1234567891011121314151617181920212223242526272829303132333435363738394041424..
https://www.acmicpc.net/problem/4348 캐시 cache dp 다이나믹 동적 계획 복습 코테 boj 백준 코딩 필수 bit 비트마스크 전체 총 합(sum)이 4로 나누었을 때 나머지가 있다면 no이다.반례 :25 2 2 2 2 15 2 2 2 2 2 나머지가 없다면(=0), dfs를 통해 len에 v[i]를 더해가면서 sum / 4를 기준으로 조건을 나누어서 처리를 한다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980#include using namespac..
https://www.acmicpc.net/problem/1648 공부 코딩 dp cache 다이나믹 동적 비트마스크 bit bitmask 캐시 생각 사고 논리 Tip 팁 boj 백준 참고(백준님 풀이 슬라이드와 코드)https://www.slideshare.net/Baekjoon/baekjoon-online-judge-1648https://gist.github.com/Baekjoon/b575f09e963137fd2b1e 꼭 복습해야할 문제이다. 사진과 주석 참고. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667#include u..
https://www.acmicpc.net/problem/2916 dp 동적 계획 복습 필수 코테 추천 다이나믹 cache 캐시 처음에 백트래킹으로 풀다가 시간 초과나서 캐시로 풀었다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include using namespace std; #define Mod 360 int n, k, cnt;bool cache[366];vector v; bool chk(int sum, int input){ if ((sum % Mod) == input) { return true; } if (cache[sum % Mod]) return false; ..
https://www.acmicpc.net/problem/2613 굉장히 코드가 더럽다.. 푼 후에 정리를 못 했다. 다음에 다시 풀어보면서 정리해야할 것. 핵심은 우선 mid를 구하면서 temp vector에 인덱스를 넣는다.(sum과 mid를 고려하면서) 그리고 27번째 줄을 고려해야한다. 마지막에는 무조건 인덱스가 들어가야한다. 그리고 ans vector도 갱신해주고 86 ~ 89번 째 줄처럼 계산해준다. ans2의 size가 m보다 작다면 뒤에서부터 1 초과인 숫자들을 1씩 감소시켜주면서 push_back(1)을 해준다. 그룹을 추가시키기 위함. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647..