📄 lkq.cpp
字号:
#include <stdio.h>
int f[30],d[30],t[30];
int max,tmax,sum;
int p[30],save[30];
int n,h;
int dfs(int level,int now,int time)
{
if(time<=0)
return 0;
if(level>n)
{
if(sum>=max&&p[1]>=tmax)
{
for(int k=1;k<=n;k++)
save[k]=p[k];
max=sum;
tmax=p[1];
}
}
else
{
for(int i=1;i<=time;i++)
{
int temp=f[level]-(i-1)*d[level];
if(temp<0)
temp=0;
now+=temp;
p[level]=i*5;
sum=now+dfs(level+1,now,time-t[level]-i);
}
}
return 0;
}
int main()
{
int i;
freopen("in.txt","r",stdin);
while(1)
{
scanf("%d",&n);
if(n==0)
break;
scanf("%d",&h);
h=h*12;
for(i=1;i<=n;i++)
scanf("%d",&f[i]);
for(i=1;i<=n;i++)
scanf("%d",&d[i]);
for(i=1;i<n;i++)
scanf("%d",&t[i]);
sum=0;
max=0;
tmax=0;
sum=0;
dfs(1,0,h);
for(i=1;i<=n;i++)
{
printf("%d",save[i]);
if(i<=n-1)
printf(", ");
else
printf("\n");
}
printf("Number of fish expected: %d\n",max);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -