일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 #어른 상어
- BFS
- softeer
- @P0
- 물채우기
- upper_bound
- 퇴사통보
- Docker
- 소프티어
- 처우협의
- OFFSET
- 파라메트릭
- 처우산정
- 연결요소
- 13908
- compose
- 매개변수탐색
- 6987
- dfs
- BOJ
- 성적평가
- 기술면접
- incr
- 경력
- msSQL
- 백준
- Today
- Total
목록전체 글 (629)
기술 블로그
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..
https://www.acmicpc.net/problem/17075 왜 0ms인지 질문 : https://www.acmicpc.net/board/view/48091 dp 메모이제이션 캐시 cache 복습 코테 필수 추천 냅색 boj 백준 2019 연세대학교 컴퓨터과학과 프로그래밍 경진대회 D번 한 점에 대해서 모든 경우의 수들을 탐색. t 2차원 배열은 -1인 곳에서 얼마만큼 사용을 했는지 "사용 횟수"로 접근했었다. 그러나 시간이 900ms가 넘었다. 정답자 분들 중 코드를 참고하였더니, 공식같은 것이 있었다. 사실 공식은 아니지만 조금만 더 생각해보면 접근할 수 있었던 식이다. 나는 그냥 아무 생각없이 for문 돌리면 되겠다 싶어 다른 방법은 생각하지 않았다. 해당 좌표(i, j)를 포함하는 나올 수..
https://www.acmicpc.net/problem/13302 dp 캐시 cache 메모이제이션 다이나믹 동적계획 각각의 경우에 따라 구현 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364#include using namespace std; #define Max 111#define INF 2e9 int n, m, dp[Max][Max];bool rest[Max]; int simulation(int day, int cp){ if (day > n) { return 0; } int &ret = dp[day][cp]; if (ret != -1)..