일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 오리스프
- 백준 C++
- 코딩
- C++
- 프랑스 남부 섬
- 융프라우 스위스 패스
- 로이커바트 숙소
- 백준으로 c++ 공부하기
- 군인
- 군대코딩
- 24524
- 시뮬레이션
- 피르스트 자전거
- auto code review
- 그린델발트 자전거
- 백준으로 C++ 공부
- 알고리즘
- 백준
- C++ 공부하기
- 군대
- 그린델발트 캠핑장
- porquerolles
- C++ 공부
- 로이커바트
- openai api
- iles dHyeres
- 대학생
- 16236 c++
- 1654
- Replit
- Today
- Total
목록C++ 공부하기 (7)
기억보다는 기록을 해볼까

정말 오랜만에 백준을 푼다. 한동안 부대에 여러 가지 일들이 터졌다. 코로나, 싸지방 고장, 백신 바빠서 싸지방을 못 왔다. 뻥이다 시간은 어떻게든 내면 올 수 있었다. 문제 https://www.acmicpc.net/problem/12865 불러오는 중입니다... 생각 DP문제이다. 2차원 DP를 만들어 최대 무게가 1일 때부터 주어진 최대 무게까지 돌면서 물건들을 확인한다. KNAPSACK 알고리즘이라고 있다. for(int i = 1; i N >> K; for (int i = 1; i > W[i] >> V[i]; for(int i = 1; i

문제 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 생각 처음 봤을 때 어떻게 해야 할지 막막했다. 다른 사람의 코드도 읽어 봤는데 이게 어떻게 잘 굴러가는 건지 잘 모르겠어서 그것을 참고만 하고 나의 새로운 코드를 작성했다. 먼저 배열을 다 받은 다음에 정렬을 시킨다 전의 끝나는 시간보다 현재의 시작하는 시간이 더 작고 현재의 끝나는 시간이 전의 끝나는 시간보다 작거나 같으면 끝나는 시각을 현재의 끝나는 시각으로 최신화해준다. 전의 끝나는 시간보다 현재의 시작하는 시간이 크거나 같으면 회의가 새로 생기는 것이기 때문에 카운트를 하나 늘려준다. 코드 #include #include #include using namespac..

오늘은 당직을 가야 하니 간단한 1 문제만 풀고 가야겠다. 재귀를 통한 순열 구현문제이다 이제부터는 순열 관련 문제들이 꽤 포스팅될 것 같다. #include using namespace std; int n; int arr[9]; bool visited[9]; int m; void dfs(int num, int cnt) { if(cnt == m) { for(int i = 0; i < m; i++) cout m; dfs(1, 0); }

예전에 못 풀었던 문제를 다시 풀어보았다. 다른 분들의 코드를 참고해서 모르는건 검색해봤다. #include #include #include using namespace std; int main() { vector v; vector org; int n; cin >> n; for(int i = 0 ; i > a; v.push_back(a); org.push_back(a); } sort(v.begin(), v.end()); v.resize(unique(v.begin(), v.end()) - v.begin()); for(int i = 0; i < org.size(); i++) { int a = org[i]; int pos = lower_bound(v.begin(),v..

처음에 브루트포스로 안풀었더니 시간초과가 나와서 검색을 동원해 결국 브루트포스로 풀었다. 아래는 브루트포스로 푼게 아닌 답이다. #include #include using namespace std; int main() { int n; cin >> n; int m; cin >> m; bool arr[10]; for(int i = 0; i > a; arr[a] = true; } if(n == 100) { cout

이렇게 길게 쓸 필요가 없는 문제인 듯 하지만 당장 생각나는게 없다. 적록색약이 아닐때 R, G, B 적록색약일 때 (R, G), B 함수를 따로따로 만들어 count 했다. #include #include #include using namespace std; int n; int dx[4] = {1, -1, 0, 0}; int dy[4] = {0, 0, 1, -1}; string map[101]; bool vst[101][101] = {false}; bool CBvst[101][101] = {false}; queue q; void rcheck() { while(!q.empty()) { auto[y, x] = q.front(); q.pop(); for(int i = 0; i < 4; i++) { int n..