1 条题解

  • 5
    @ 2023-3-11 16:06:59
    #include<...>
    #define int long long
    #define fo(i,a,b) for(int i=a;i<=b;i++)
    using namespace std;
    int n,m;
    int a[501];
    int f[501][501];
    int q[501];
    main(){
    	cin>>n>>m;
    	fo(i,1,n){
    		cin>>a[i];
    		q[i]=q[i-1]+a[i];
    	}
    	memset(f,0x3f,sizeof(f));
    	fo(i,1,m) f[1][i]=1;
    	fo(i,1,m) f[0][i]=0;
    	fo(i,1,n) f[i][1]=q[i];
    	fo(i,2,n){
    		fo(j,1,m){
    			fo(k,0,i){
    				f[i][j]=min(f[i][j],max(f[i-k][j-1],q[i]-q[i-k]));
    			}
    		}
    	}
    	cout<<f[n][m];
    	return 0;
    }
    
    • 1

    信息

    ID
    370
    时间
    1000ms
    内存
    128MiB
    难度
    3
    标签
    递交数
    118
    已通过
    65
    上传者