紧急求助。80!!!80!!!80!!!
查看原帖
紧急求助。80!!!80!!!80!!!
551630
Lemon_zqp楼主2022/10/24 18:42
#include<bits/stdc++.h>
using namespace std;

int a[100005];
int N, M;

bool check(int m)
{
    int last = 0, cnt = 0;
    for(int i = 1; i <= N; i++)
    {
        if(last + a[i] <= m)
        {
        	last+=a[i];
        }
        else 
        {
        	last = a[i];
        	cnt++;
        }
    }
    return cnt >= M;
}
int main()
{
    cin >> N >> M;
    for(int i = 1; i <= N; i++)
    {
    	cin >> a[i];
    }
    int l = 0, r = 1e9, ans = 0;
    while(l <= r)
    {
    	int m = (l + r) / 2;
        
        if(check(m))
        {
        	l = m + 1;
        	ans = m;
        }
        else 
        {
        	r = m - 1;
        }
    }
    cout << ans + 1;
    return 0;
}

80,为啥

2022/10/24 18:42
加载中...