P8742求助 WA(10),本地对拍能过
  • 板块学术版
  • 楼主zxm_
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/5/4 19:07
  • 上次更新2023/10/23 16:40:37
查看原帖
P8742求助 WA(10),本地对拍能过
731974
zxm_楼主2023/5/4 19:07

rt

提交记录

对拍用的题解

#include<bits/stdc++.h>
using namespace std;
int n,m;
int t[26666];
bool dp[109][14009];
int main(){
	cin>>n;
	int sum;
	for(int i=1;i<=n;++i){
		cin>>t[i];
		sum+=t[i];
	} 
	
	for(int i=1;i<=n;++i){ 
		for(int j=1;j<=sum;++j){
			dp[i][j]=(dp[i-1][j] || dp[i-1][abs(j-t[i])] || dp[i-1][j+t[i]]);
			
			if(t[i]==j)dp[i][j]=1;
			/*调试用
			cout<<"dump......"<<endl;
			cout<<"at "<<i<<","<<j<<":"<<endl;
			cout<<"dp[i-1][j]"<<dp[i-1][j]<<endl;
			cout<<"dp[i-1][abs(j-t[i])]"<<dp[i-1][abs(j-t[i])]<<endl;
			cout<<"dp[i-1][j+t[i]]"<<dp[i-1][j+t[i]]<<endl;
			*/			
			
		}
	}int sssum=0;
	for(int j=1;j<=sum;++j){
		sssum+=dp[n][j];
	}cout<<sssum;
	return 0;
	
	
}
2023/5/4 19:07
加载中...