社区讨论

C语言六十分,3,4,6,7TLE求调

P5194[USACO05DEC] Scales S参与者 4已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mie8e6t3
此快照首次捕获于
2025/11/25 15:05
3 个月前
此快照最后确认于
2025/11/25 16:17
3 个月前
查看原帖
C
#include<stdio.h>
long long n,c;
long long a[1005];
long long max=0;
void dfs(long long cnt,long long sum,long long count){
    if(sum>c){return;}
	if(sum>max){max=sum;}
	for(int i=cnt;i<n;i++){
		if(count<2){dfs(i+1,sum+a[i],count+1);continue;}
		else if(count>=2){if(a[i]>=a[i-1]+a[i-2]){dfs(i+1,sum+a[i],count+1);}
}
                        	}
}
int main()
{scanf("%lld %lld",&n,&c);
for(int i=0;i<n;i++){
	scanf("%lld",&a[i]);
}
dfs(0,0,0);
printf("%lld",max);
 	return 0;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...