比赛 防止浮躁的小练习 评测结果 AAAAAAAAAAAA
题目名称 “破锣摇滚”乐队 最终得分 100
用户昵称 liuliuliu 运行时间 0.003 s
代码语言 C++ 内存使用 0.35 MiB
提交时间 2016-10-07 10:29:27
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <climits>
//#include <cstdlib>
//#include <ctime>
//#include <sstream>
//#include <windows.h>
//#include <queue>
//#include <set>
//#include <map>
using  namespace std;
 
const int maxn=1000+10;
const int maxm=1000+10;

int n,t,m;
int a[maxn];
int f[21][21][21];
int main()
{
	freopen("rockers.in","r",stdin);
	freopen("rockers.out","w",stdout);
	cin>>n>>t>>m;
	for(int i=1; i<=n; i++)
		scanf("%d",&a[i]);
	for(int i=1 ;i<=n; i++)
	{
		for(int j=1 ;j<=m; j++)
		{
			for(int k=1; k<=t; k++)
			{
				f[i][j][k]=f[i-1][j][k];
				if(k>=a[i])
					f[i][j][k]=max(f[i][j][k],1+max(f[i-1][j][k-a[i]],f[i-1][j-1][t]));
			}
		}
	}
	cout<<f[n][m][t]<<endl;
	return 0;
}