강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của m541720860626
m541720860626

câu hỏi đã được viết

Đối với việc làm ở công ty CNTT: Tự mình chinh phục bài kiểm tra viết mã (C/C++)

Thực hiện bài toán Ba lô 2 - Viết nội bộ chính

배낭문제가 백준문제로 있어서 작성했는데 왜 안되는지 알 수 있을까요?

Viết

·

479

0

https://www.acmicpc.net/problem/12865

 

#include <iostream>

#include <algorithm>

using namespace std;

int N, K;

int W[101];

int V[101];

int DP[101][100001];

int main()

{

scanf("%d%d", &N, &K);

for (int i = 1; i <= N; i++){

scanf("%d %d", &W[i], &V[i]);

}

for (int i = 1; i <= N; i++)

{

for (int j = 1; j <= K; j++)

{

if (j < W[i])

{

DP[i][j] = DP[i-1][j];

}

else

DP[i][j] = max(DP[i-1][j],DP[i-1][j-W[i]]-V[i]);

}

}

printf("%d", DP[N][K]);

}

 

안녕하세요? 정올 문제로 배낭문제 수강하고 똑같이 있는 백준문제를 발견하고 작성한 코드인데 채점을 하면 틀렸다고 뜹니다. 혹시 이유를 알 수 있을까요?

c코딩-테스트

Câu trả lời 1

1

yongbaks님의 프로필 이미지
yongbaks
Người chia sẻ kiến thức

안녕하세요 Estados Unidos님.

질문해주신 백준의 문제는 영상에서 다룬 문제와 다릅니다.

영상의 경우에는 1개의 물건을 최대 1개 담을 수 있지만, 올려주신 백준 문제에선 해당 제약이 없습니다.

따라서, 올려주신 백준 문제는 아래 정올 문제와 동일합니다.
https://jungol.co.kr/problem/1077?cursor=eyJwcm9ibGVtc2V0IjoiOCIsImZpZWxkIjo2LCJpZHgiOjd9

Estados Unidos님이 만족하시는 답변이 되었기를 바라며, 답변 해결로 상태 변경을 부탁드립니다.

이후에도 문제를 풀거나 공부하시면서 어려운 점이 있다면 질문 올려주세요.

감사합니다.

Hình ảnh hồ sơ của m541720860626
m541720860626

câu hỏi đã được viết

Đặt câu hỏi