讨论 / 请帮忙看一下,这个为什么会死循环?
ceshiyong 2009-08-14 23:53:00
点我顶贴 收藏 删除
状态: Unaccepted

测评机: Xeost[5]

得分: 80分

提交日期: 2009-8-15 14:26:00

有效耗时: 436毫秒

测试结果1: 通过本测试点|有效耗时62ms

测试结果2: 通过本测试点|有效耗时62ms

测试结果3: 选手程序运行超过时限

测试结果4: 通过本测试点|有效耗时47ms

测试结果5: 通过本测试点|有效耗时46ms

测试结果6: 通过本测试点|有效耗时62ms

测试结果7: 通过本测试点|有效耗时47ms

测试结果8: 选手程序运行超过时限

测试结果9: 通过本测试点|有效耗时47ms

测试结果10: 通过本测试点|有效耗时63ms

#include<stdio.h>

int a[101][101]={0},f[101]={0},n,m;

char c;

int main()

{

scanf("%d%d",&n,&m);

do scanf("%c",&c);while(c!=’\n’);

int i,j,k;

for(i=1;i<=n;i++)

{

for(j=1;j<=m;j++)

scanf("%d",&a[i][j]);

do scanf("%c",&c);while(c!=’\n’);

}

for(i=1;i<=n;i++)

for(j=m;j>=0;j--)

for(k=0;k<=j;k++)

if(j-k>=0)

if(f[j]<f[j-k]+a[i][k])

f[j]=f[j-k]+a[i][k];

printf("%d",f[m]);

return 0;

}

#1 ceshiyong@2009-08-14 23:53:00
回复 删除
放假了,糖糖正在教室里和大家讨论假期的活动。可班主任却开着一辆巨型卡车进了教室——不要以为班主任发财了,这是学校给每个班配备的($_$),每学期只用一次,就是发假期作业。班主任要求大家认认真真完成作业。唉,班主任知不知道此时他的RP已经暴跌了呢?

说归说,写还是要写的。糖糖是一个很认真的学生,对待作业也不例外。因为这次假期结束后学业就很繁重了,必须要提前积攒RP。整个暑假糖糖只有M分钟能用来写N本作业。于是糖糖在阅读了所有的作业本之后,列出了一个N*M的矩阵。第i行的第j个代表第i本作业用j分钟写完可以积攒的RP,你的任务就是,算算在M分钟内写完作业(当然,有的作业是可以不写的),能积攒的RP的最大值。

注意:在读入矩阵时,对于不当数据要正确处理。

输入格式

第一行,输入N和M;(1≤M,N≤100)

第2到N+1行,每行前M个数,第i-1行(原文:i+1)的第j个数代表第i本作业用j分钟写完可以积攒的RP值。

所有数据均为正整数 且输出结果<maxlongint。

输出格式

仅一行,就是积攒RP的最大值。

样例输入

2 3

0 1 0

2 0 0

样例输出

3

查看更多回复
提交回复