比赛 |
20101025 |
评测结果 |
AAAAAWWWWW |
题目名称 |
逛街 |
最终得分 |
50 |
用户昵称 |
Citron酱 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2010-10-25 20:10:51 |
显示代码纯文本
#include <fstream>
#define I_F "shop.in"
#define O_F "shop.out"
#define MAX 300
using namespace std;
short w[MAX],v[MAX],t[MAX],h[MAX],n,x,y;
int ans;
void Input();
void Search(short z, short nw, short nv, short nt);
void Output();
int main()
{
Input();
Search(0,0,0,0);
Output();
return 0;
}
void Input()
{
ifstream fin(I_F);
fin>>n>>x>>y;
for (short i=0; i<n; i++)
fin>>w[i]>>v[i]>>t[i]>>h[i];
fin.close();
}
void Search(short z, short nw, short nv, short nt)
{
if (z==n)
{
if (nt>ans)
ans=nt;
}
else
if ((nw+w[z]<=x)&&(nv+v[z]<=y))
{
Search(z+1,nw+w[z],nv+v[z],nt+t[z]);
if ((nw+w[z]*h[z]<=x)&&(nv+v[z]*h[z]<=y))
Search(z+1,nw+w[z]*h[z],nv+v[z]*h[z],nt+t[z]*h[z]);
}
else
Search(z+1,nw,nv,nt);
}
void Output()
{
ofstream fout(O_F);
fout<<ans<<'\n';
fout.close();
}