?? gofishing.cpp
字號:
#include"stdio.h"
void xuanze(int n,int ci,int *f,int *d,int *count,int (*stay)[25])
{
int indexmax;
int flag=0;
int currentmax;
for(int i=1;i<=ci;i++)
{
currentmax=f[1];
indexmax=1;
for(int j=1;j<=n;j++)
{
if(currentmax<f[j])
{
currentmax=f[j];
indexmax=j;
}
}
f[indexmax]=f[indexmax]-d[indexmax];
for(int cishu=0,k=1;k<=n;k++)
{
if(f[k]<=0)
{
cishu++;
}
}
count[n]=count[n]+currentmax;
stay[n][indexmax]++;
if(cishu==n)
{
stay[n][1]=stay[n][1]+ci-i;
break;
}
}
}
main()
{
int n,h,ci,ai[25],numberoffish,f[25],vf[25],d[25],t[25],count[25],stay[25][25];
int tfish[25],tstay[25][25][25],tn[25];
int s=0,tt;
while(s>=0)
{
scanf("%d",&n);
s++;
tn[s]=n;
if(n==0)
{ s--;
break;
}
scanf("%d",&h);
for(int i=1;i<=n;i++)
scanf("%d",&f[i]);
for(i=1;i<=n;i++)
scanf("%d",&d[i]);
for(i=2;i<=n;i++)
scanf("%d",&t[i]);
t[1]=0;
for(i=1;i<=n;i++)
count[i]=0;
for(i=1;i<=n;i++)
for(int j=1;j<=n;j++)
stay[i][j]=0;
for(i=1;i<=n;i++)
{
ci=h*12;
for(int j=1;j<=i;j++)
{
ci=ci-t[j];
}
for(j=1;j<=n;j++)
{
vf[j]=f[j];
}
xuanze(i,ci,vf,d,count,stay);
}
numberoffish=count[1];
for(i=2;i<=n;i++)
{
if(numberoffish<count[i])
{
numberoffish=count[i];
ai[s]=i;
}
}
tfish[s]=numberoffish;
for(i=1;i<=n;i++)
{
tstay[s][ai[s]][i]=stay[ai[s]][i];
}
}
for(tt=1;tt<=s;tt++)
{
printf("%d",tstay[tt][ai[tt]][1]*5);
for(int i=2;i<=tn[tt];i++)
{
printf(",%d",tstay[tt][ai[tt]][i]*5);
}
printf("\nNumber of fish expected:%d\n",tfish[tt]);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -