3 solutions

  • 1
    @ 2024-10-13 9:40:52
    #include<bits/stdc++.h>
    using namespace std;
    const int N=100010;
    int a[N];
    int k;
    int n;
    bool check(int x)
    {
    	int ans=1,s=a[0];
    	for(int i=1;i<n;i++) 
    	{
    		if(a[i]+s<=x)
    		{
    			s+=a[i];
    		}
    		else
    		{
    			ans++;
    			s=a[i];
    		}
    	}
    	return ans<=k;
    } 
    int main()
    {
    	cin>>n>>k;
    	int l=0;
    	for(int i=0;i<n;i++)
    	{
    		cin>>a[i];
    		l=max(l,a[i]);
    	}
    	int r=1e8;
    	while(l<r)
    	{
    		int mid=(l+r)/2;
    		if(check(mid))
    		{
    			r=mid;
    		}
    		else l=mid+1;
    	}
    	cout<<l;
        return 0;
    }
    
    
    
    • 0
      @ 2025-9-22 16:49:09
      #include<bits/stdc++.h>
      using namespace std;
      const int N=100010;
      int a[N];
      int k;
      int n;
      bool check(int x)
      {
      	int ans=1,s=a[0];
      	for(int i=1;i<n;i++) 
      	{
      		if(a[i]+s<=x)
      		{
      			s+=a[i];
      		}
      		else
      		{
      			ans++;
      			s=a[i];
      		}
      	}
      	return ans<=k;
      } 
      int main()
      {
      	cin>>n>>k;
      	int l=0;
      	for(int i=0;i<n;i++)
      	{
      		cin>>a[i];
      		l=max(l,a[i]);
      	}
      	int r=1e8;
      	while(l<r)
      	{
      		int mid=(l+r)/2;
      		if(check(mid))
      		{
      			r=mid;
      		}
      		else l=mid+1;
      	}
      	cout<<l;
        return 0;
        }
        `c++
      • 0
        @ 2025-9-22 16:47:58

        #include<bits/stdc++.h> using namespace std; const int N=100010; int a[N]; int k; int n; bool check(int x) { int ans=1,s=a[0]; for(int i=1;i<n;i++) { if(a[i]+s<=x) { s+=a[i]; } else { ans++; s=a[i]; } } return ans<=k; } int main() { cin>>n>>k; int l=0; for(int i=0;i<n;i++) { cin>>a[i]; l=max(l,a[i]); } int r=1e8; while(l<r) { int mid=(l+r)/2; if(check(mid)) { r=mid; } else l=mid+1; } cout<<l; return 0; }

        • 1

        Information

        ID
        951
        Time
        1000ms
        Memory
        256MiB
        Difficulty
        3
        Tags
        (None)
        # Submissions
        94
        Accepted
        28
        Uploaded By