일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- getline
- 백준
- iOS14
- 알고리즘 공부방법
- 이분그래프
- 연결요소
- double ended queue
- k-eta
- 자료구조
- Django의 편의성
- vscode
- 입/출력
- EOF
- string 메소드
- correlation coefficient
- Django란
- 장고란
- scanf
- 표준 입출력
- c++
- Django Nodejs 차이점
- 2557
- 프레임워크와 라이브러리의 차이
- UI한글변경
- 입출력 패턴
- string 함수
- 시간복잡도
- 구조체와 클래스의 공통점 및 차이점
- 매크로
- 엑셀
- Today
- Total
목록알고리즘/Baek Joon (4)
Storage Gonie
다이나믹 프로그래밍 문제 * 다이나믹 문제만이 가지고 있는 패턴을 익히기 위해 많은 문제를 풀어보는 것이 중요함 1. 결과를 특정한 수로 나눈 나머지를 출력하라는 유형의 문제 - 접근 방법 : 최종 연산된 결과에만 나머지 연산을 수행하면 안되고, 값을 계산할 때 마다 d 배열에 나머지를 저장해야함. 그 이유는 출제자가 이미 중간 연산의 결과가 데이터의 저장범위를 넘어가는 것을 알고 있기에 이런 문제를 내는 것이고, 이렇게 해주지 않으면 의도된 답을 구할 수 없게 된다. 2. 2차원 이상의 배열을 사용해야하는 유형의 문제 - 접근 방법 : 점화식을 만들고 구현하는 것은 1차원 배열을 사용하는 문제와 동일하니, 1차원 배열로 풀어야하는지 2차원 배열로 풀어야 하는지 판단하는 능력을 길러야 한다. 1차원 배열..
ㅇㅇㅇ 문제 - 문제요약 해결 방법 1. D[N] 에 어떤 값을 저장할 것인지 문장으로 정의해줘야 한다. - D[N] = "N개를 모두 구매하며 지불할 수 있는 최대 금액" 2. D[N]의 값을 어떻게하면 찾을 수 있을지 점화식을 생각한다. - 정수 N이 주어지고, 앞에 어떤 조합이 존재하고 마지막 조합에서 아래와 같은 방법 중 1가지를 선택할 수 있다. 3. 다이나믹 프로그래밍 방법을 적용할 수 있는 문제인지 확인 => 1, 2번을 거쳐야 이게 잘 보임. - 위와 같이 큰 문제를 작은 문제로 쪼갤 수 있으며, 작은 문제도 큰 문제와 같은 방법으로 풀 수 있고, 작은 문제들이 겹친다. (Overlapping SubProblem) - 문제의 정답을 작은 문제의 정답으로부터 구할 수 있으며, 문제의 크기에 ..
# 틀렸습니다 1. 입력이 0일 때의 처리를 해주지 않은 경우 => 입력이 0일 때를 처리해줌 2. 데이터의 저장범위를 넘어서는 오버플로우가 발생한 경우 int -> long long 변경해줌 # 런타임 오류 1. 배열의 크기를 너무 작게 선언한 경우 => 배열의 크기를 키움 # 시간초과 1. endl -> "\n"으로 변경해줌 2. cin, cout을 사용하고 있다면 아래의 3줄 추가해주기 ios::sync_with_stdio(false) cin.tie(NULL); cout.tie(NULL); 3. 알고리즘을 좀 더 효율적으로 변경하기
문제 풀이 자세한 풀이 : # C++ ㅁㄴㅇ # Java ㅁㄴㅇ