일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 르탄즈
- 르탄즈5기
- 알고리즘
- 혼공단
- ReactNative
- 코드잇강의추천
- 독서활동
- 내일배움캠프
- 혼공컴운
- js
- 코드잇TIL
- 코딩공부
- 코드잇
- GIT
- DB마이저널
- c++헤더
- 스파르타코딩클럽
- 앱개발강의
- 자바스크립트
- 티스토리챌린지
- DB김준기문화재단
- 코드잇앰배서더
- 리액트네이티브
- 오블완
- 내일배움캠프사전캠프
- 앱개발부트캠프
- 혼공단JS
- DB드림리더장학생
- 오늘도코드잇
- 환경교육봉사
- Today
- Total
목록Algorithm (4)
axnuo
백준을 매번 풀다 말다 풀다 말다...늘 까먹는 것 같아서 우선 자주 쓰는 헤더랑 시간 단축하는 방법을 좀 적어보려고 한다!!! 왜 C++을 쓸까?그것은... C언어를 먼저 배웠기 때문입니다.C++을 사용하는 이유는 STL이 있기 때문이 큽니다.STL은 나중에 또 알고리즘 풀면서 세세히 공부를 하고 정리를 해보겠습니다. C++ 헤더파일C언어라면 `#include ` 가 있겠죠C++에서는 기본 헤더가 `#include `입니다.근데!! 코드를 짜다보면 더 많은 헤더들이 필요합니다. string이라던가... algorithm이라던가...그래서 `#include `를 사용하시는 분들도 많습니다.하지만 저는 아직 써본적이 없습니다. VS Code 환경에서 사용하기 위해서는 세팅이 필요하다고 하더군요https:/..
class Solution { fun solution(n: Long): IntArray { var answer = intArrayOf() n.toString().map { answer += (it.toInt() - '0'.toInt()) } return answer.reversedArray() } } 세상에! n을 문자열로 바꾸고 map을 이용해 문자를 하나씩 순회하며 int로 바꿔 배열에 저장 그리고 거꾸로 출력! ... map을 알게 된 시간이었습니다... map 안에서 it은 기본적으로 문자열의 각 요소를 나타냄!!

배낭 문제 즉, Knapsack Problem은 물건의 갯수와 배낭의 최대 용량, 각 아이템의 무게와 가치를 입력받고 최대 가치를 구하는 문제이다. 이는 DP, 백트래킹, Branch and Bound 등등... 풀 수 있는 방법이 굉장히 다양한데 이번에는 DP로 접근하는 방식에 대해 다뤄보려고 한다. DP는 부분 문제를 바탕으로 결과값을 도출하는 방식이다... DP 자체에 대한 글은 나중에 다뤄보도록 하고 아무래도 혼자 점화식을 구상하는 능력이 매우매우 떨어지는 것 같고 이번에도 다른 분의 글을 바탕으로 이해하며 코드를 작성해보았다. 배낭의 무게를 임시로 설정해서 각 무게에 해당할 때 마다 최대 가치를 저장하는 부분이 중요하다고 생각했다... #include using namespace std; int..
재귀 호출을 할 때 같은 값을 사용해야한다면 필요할 때마다 재귀호출을 하는 건 시간 / 메모리 측면에서 낭비... => 재귀 호출한 값을 저장해놓고 사용할 것 이 문제에서 가장 중요했던 것! //b가 짝수이면 : a^b = a^(b/2) x a^(b/2) //b가 홀수이면 : a^b = a^(b/2) x a^(b/2 + 1) 요거이다 ... #include using namespace std; long long a, b, c, tmp; long long power(long long b) { if(b==0) return 1; if(b==1) return a%c; tmp=power(b/2)%c; if(b%2==0) return tmp*tmp%c; else return tmp*tmp%c*a%c; } int m..