提出 #58261040


ソースコード 拡げる

#include<bits/stdc++.h>
using namespace std;
#define ll long long

const int N = 3e3 + 10;
const ll inf = 1e10;

int n, W;
int w; ll v;

vector<ll> rec[N];
priority_queue <ll, vector<ll>, less<ll> > pq;
ll f[N]; // f(i,j) 考虑小于等于 i 的权值(滚动数组)中,容量为 j 的最大价值
ll g[N]; // 在每一组中,选择 i 个物品的最大价值

int main(){
	cin >> n >> W;
	for(int i = 1; i <= n; i++){
		cin >> w >> v;
		rec[w].push_back(v); // 把价值按照权值分组
	}
	for(int i = 1; i <= W; i++){
		if(!rec[i].size()) continue;
		while(!pq.empty()) pq.pop();
		for(auto j : rec[i]){
			pq.push(j - 1);
		}
		for(int j = 1; j <= W / i; j++){
			g[j] = pq.top();
			pq.pop();
			pq.push(g[j] - 2);
			g[j] += g[j - 1];
		}
		for(int j = W; j >= i; j--){
			for(int k = 1; k <= j / i; k++){
				f[j] = max(f[j], f[j - k * i] + g[k]);
			}
		}
	}
	cout << f[W];
	return 0;
}

提出情報

提出日時
問題 F - Knapsack with Diminishing Values
ユーザ chenwenmo
言語 C++ 20 (gcc 12.2)
得点 550
コード長 941 Byte
結果 AC
実行時間 25 ms
メモリ 3800 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 550 / 550
結果
AC × 3
AC × 58
セット名 テストケース
Sample 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt
All 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt, 01_random_27.txt, 01_random_28.txt, 01_random_29.txt, 01_random_30.txt, 01_random_31.txt, 01_random_32.txt, 01_random_33.txt, 01_random_34.txt, 01_random_35.txt, 01_random_36.txt, 01_random_37.txt, 01_random_38.txt, 01_random_39.txt, 01_random_40.txt, 01_random_41.txt, 01_random_42.txt, 01_random_43.txt, 01_random_44.txt, 01_random_45.txt, 01_random_46.txt, 01_random_47.txt, 01_random_48.txt, 01_random_49.txt, 01_random_50.txt, 02_handmade_01.txt, 02_handmade_02.txt, 02_handmade_03.txt, 02_handmade_04.txt, 02_handmade_05.txt
ケース名 結果 実行時間 メモリ
00_sample_01.txt AC 1 ms 3560 KiB
00_sample_02.txt AC 1 ms 3432 KiB
00_sample_03.txt AC 1 ms 3476 KiB
01_random_01.txt AC 8 ms 3608 KiB
01_random_02.txt AC 8 ms 3608 KiB
01_random_03.txt AC 8 ms 3740 KiB
01_random_04.txt AC 8 ms 3664 KiB
01_random_05.txt AC 8 ms 3800 KiB
01_random_06.txt AC 1 ms 3492 KiB
01_random_07.txt AC 8 ms 3568 KiB
01_random_08.txt AC 13 ms 3696 KiB
01_random_09.txt AC 13 ms 3600 KiB
01_random_10.txt AC 1 ms 3528 KiB
01_random_11.txt AC 8 ms 3588 KiB
01_random_12.txt AC 3 ms 3568 KiB
01_random_13.txt AC 13 ms 3700 KiB
01_random_14.txt AC 13 ms 3576 KiB
01_random_15.txt AC 8 ms 3592 KiB
01_random_16.txt AC 2 ms 3528 KiB
01_random_17.txt AC 3 ms 3504 KiB
01_random_18.txt AC 12 ms 3544 KiB
01_random_19.txt AC 13 ms 3652 KiB
01_random_20.txt AC 11 ms 3588 KiB
01_random_21.txt AC 2 ms 3556 KiB
01_random_22.txt AC 2 ms 3560 KiB
01_random_23.txt AC 17 ms 3556 KiB
01_random_24.txt AC 17 ms 3640 KiB
01_random_25.txt AC 2 ms 3548 KiB
01_random_26.txt AC 4 ms 3608 KiB
01_random_27.txt AC 3 ms 3572 KiB
01_random_28.txt AC 17 ms 3532 KiB
01_random_29.txt AC 18 ms 3552 KiB
01_random_30.txt AC 7 ms 3556 KiB
01_random_31.txt AC 5 ms 3512 KiB
01_random_32.txt AC 2 ms 3588 KiB
01_random_33.txt AC 17 ms 3564 KiB
01_random_34.txt AC 18 ms 3592 KiB
01_random_35.txt AC 2 ms 3472 KiB
01_random_36.txt AC 7 ms 3648 KiB
01_random_37.txt AC 14 ms 3708 KiB
01_random_38.txt AC 5 ms 3636 KiB
01_random_39.txt AC 25 ms 3664 KiB
01_random_40.txt AC 6 ms 3528 KiB
01_random_41.txt AC 4 ms 3588 KiB
01_random_42.txt AC 2 ms 3616 KiB
01_random_43.txt AC 16 ms 3640 KiB
01_random_44.txt AC 21 ms 3692 KiB
01_random_45.txt AC 5 ms 3588 KiB
01_random_46.txt AC 5 ms 3596 KiB
01_random_47.txt AC 3 ms 3572 KiB
01_random_48.txt AC 2 ms 3640 KiB
01_random_49.txt AC 22 ms 3636 KiB
01_random_50.txt AC 2 ms 3476 KiB
02_handmade_01.txt AC 21 ms 3672 KiB
02_handmade_02.txt AC 1 ms 3616 KiB
02_handmade_03.txt AC 1 ms 3588 KiB
02_handmade_04.txt AC 5 ms 3552 KiB
02_handmade_05.txt AC 2 ms 3516 KiB