일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 성적평가
- 기술면접
- 백준
- 소프티어
- @P0
- 퇴사통보
- dfs
- softeer
- msSQL
- 이분탐색
- incr
- 물채우기
- 매개변수탐색
- 파라메트릭
- BFS
- 오퍼레터
- 처우협의
- BOJ
- 6987
- OFFSET
- boj #19237 #어른 상어
- Docker
- compose
- 13908
- 연결요소
- 백트래킹
- Kafka
- 경력
- 처우산정
- Today
- Total
목록2020/03 (49)
기술 블로그
https://algospot.com/judge/problem/read/DARPA 비슷한 문제 : https://hsdevelopment.tistory.com/548파라매트릭 서치(Parametric Search) Greedy 그리디 탐색 복습 필수 추천 코테 코딩 계속 오답이길래 봤더니 이분 탐색 시작점(s)을 1로 했었다. 답이 0인 경우도 있는 것 같다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263#include using namespace std; int n, m; bool chk(const vector &v, double mid){..
https://www.acmicpc.net/problem/11404 백준 boj 플로이드 와샬 최단거리 36, 50번 째 줄 주석문만 참고. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657#include using namespace std; #define Max 111#define INF 2e9 int fw[Max][Max], n, m; int main(){ cin.tie(0); scanf("%d %d", &n, &m); for (int i = 1; i
https://www.acmicpc.net/problem/5618 유클리드 호체법을 사용 12345678910111213141516171819202122232425262728293031323334353637383940414243#include using namespace std; int n, g; int gcd(int a, int b){ return b == 0 ? a : gcd(b, a%b);} int main(){ cin.tie(0); scanf("%d %d", &n, &g); int a; for (int i = 1; i
https://www.acmicpc.net/problem/2261 이 글의 코드는 아래의 글을 참고하여 작성한 코드입니다.아래의 글을 보시길 추천합니다. https://www.acmicpc.net/blog/view/25 또한, set은 기본적으로 first를 기준으로 오름차순 정렬 후에 second를 정렬되어 있다.그러나 필요한 것은 second(y)를 기준으로 한 것이 필요하기 때문에 정렬 구조체(ordery)를 추가해야한다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828..
https://www.acmicpc.net/problem/12018 boj 복습 생각 그리디 탐욕 우선 각 수강 과목에 넣은 마일리지를 내림차순 정렬을 한다. 이후에 수강 인원을 고려하여 그 과목을 수강할 수 있는 최소의 마일리지를 구한다. 구한 마일리지들을 다시 오름차순 정렬을 한다. 그 이후로 주어진 마일리지(m)을 활용하여 Greedy하게 답을 구해준다. 처음 제출했을 때 틀렸었는데, 45 ~ 47번 째 줄처럼 작성했었다. 생각해보니 L이 마일리지 신청한 인원보다 클 때는 성준이가 무조건 수강할 수 있으므로 최소의 마일리지인 1을 부여한다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849..
https://www.acmicpc.net/problem/18185 Greedy 그리디 탐욕 boj 백준 복습 필수 추천 dp 수학 등차수열 무조건 3개의 공장에서 라면을 구매할 수 있는 경우가 있으면, 3개 공장을 먼저 처리하는 문제인줄 알았다.즉, 3 → 2 → 1 이런 순서로 진행하는 줄 알았다. 하지만, 반례가 있었는데 https://www.acmicpc.net/board/view/47049 41 2 1 1wrong : 13correct : 12 1 1 1을 먼저 구매해버리면, 뒤에 하나의 공장에서 구매하는 것이 2번 일어나므로 7 + 2 * 3 = 13이 나오게 된다. 그러나, 1 1을 먼저 구매하고, 뒤이어 1 1 1을 구매하면, 5 + 7 = 12로 최소 비용을 구할 수 있게 된다. 즉, a..
https://www.acmicpc.net/problem/1826 복습 코테 코딩 Greedy 힙 우선순위큐 그리디 코딩 필수 추천 백준 boj End : 성경이의 위치에서 마을까지의 거리oil : 트럭에 원래 있던 연료의 양 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465#include using namespace std; int n, End, oil;vector v;priority_queue pq; int main(){ cin.tie(0); scanf("%d", &n); int a, b; for (int i = 0; i
https://www.acmicpc.net/problem/16920 1부터 숫자들의 위치를 저장하고, bfs를 갈 수 있는 거리만큼 실행한다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091#include using namespace std; #define Max 1010 int n, m, p, path[Max], answer[Max];int dy[4] = { 0, 1, 0, -1 };int dx[4] = { 1, 0, -1, 0 };char M..