별일없는 범고래님의 이글루입니다
Posts
238 posts[c++] 1로 만들기 / dynamic programming topdown
질문 검색1로 만들기 성공시간 제한메모리 제한제출정답맞은 사람정답 비율2 초128 MB4470614447947332.491%문제정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최소값을 출력하시오.입력첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다.출력첫째 줄에 연산을 하는 횟수의 최소값을 출력한다.예제 입력 1 복사2예제 출력 1 복사1예제 입력 2 복사10예제 출력 2 복사3힌트10의 경우에 10 -> 9 -> 3 -> 1 로 3번 만에 만들
[c++]알고리즘 - 동적 계획법(dynamic programming)
동적 계획법은 프로그래밍 대회 문제에 가장 자주 출현하는 디자인 패러다임 중의 하나이다. 동적 계획법은 최적화 문제를 연구하는 수학이론에서 유래하였다. 전산학에서 흔히 쓰이는 dynamic, programming과는 관련이 없어서 혼동 할 수 있으므로 주의를 요한다. 중복을 회피하기 위한 기법 동적 계획법은 큰 의미에서 분할 정복과 같은 접근 방식을 따르게 되는데 동적 계획법또한 divide&conquer방식을 이용해 주어진 문제를 작은 문제로 나눈뒤 답을 구하고 이 답들로부터 본 문제의 답을 구할 수 있다. 다만 분할 정복과 동적 계획법의 차이점으로는 문제를 나누는 방식이다. 문제를 나누게 될때 중복되는 부분이 문제마다 생길수도 안생길 수도 있는데, 데이터가 많아질 수록 중복되는
![[c++] error : vector iterator + offset is out of range.](https://img.zoomtrend.com/2018/06/22/c0242066_5b2cf0cd71764.png)
[c++] error : vector iterator + offset is out of range.
123456789101112131415161718192021222324252627#include #include using namespace std;int main() { vector myvector(3, 100); vector ::iterator it; it = myvector.end(); it = myvector.insert(it, 200); myvector.insert(it, 2, 300); it = myvector.end(); std::vector anothervector(2, 400); myvector.insert(it - 2, anoth
c++ 울타리잘라내기 / 분할정복
울타리 잘라내기문제답안 제출통계문제 정보문제 ID시간 제한메모리 제한제출 횟수정답 횟수 (비율)FENCE3000ms131072kb95342913 (30%)출제자출처분류JongMan알고리즘 문제 해결 전략보기문제너비가 같은 N개의 나무 판자를 붙여 세운 울타리가 있습니다. 시간이 지남에 따라 판자들이 부러지거나 망가져 높이가 다 달라진 관계로 울타리를 통째로 교체하기로 했습니다. 이 때 버리는 울타리의 일부를 직사각형으로 잘라내 재활용하고 싶습니다. 그림 (b)는 (a)의 울타리에서 잘라낼 수 있는 많은 직사각형 중 가장 넓은 직사각형을 보여줍니다. 울타리를 구성하는 각 판자의 높이가 주어질 때, 잘라낼 수 있는 직사각형의 최대 크기를 계산하는 프로그램을 작성하세요. 단 (c)처럼 직사각형을 비스듬히 잘라낼

vector의 size와 capacity
문제를 풀다가 다음과 같은 착오가 발생하였다. 원소의 개수를 7개 집어넣었는데 의도치 않은 결과값이 나와 살펴보니,1int value=get_area(wall,0,wall.size()-1);cs 12345vector wall(N,0); for (int i = 0; i < N; i++) { cin >> tall; wall.push_back(tall); }cs위와 같은 코드에서 문제가 발생하였다. 다른 사람들의 코드를 참고하다보니 문제가 생겨서 원인을 분석해보았는데,즉 , vector wall(N,0);에서 {0,0,0,0,0,0}로 벡터가 이미완성된후 push_back을 통해 추가하여서



