ABC 374 C 蒟蒻二分求调
  • 板块题目总版
  • 楼主Treap_Kongzs
  • 当前回复6
  • 已保存回复6
  • 发布时间2024/10/5 21:43
  • 上次更新2024/10/6 08:25:30
查看原帖
ABC 374 C 蒟蒻二分求调
1153677
Treap_Kongzs楼主2024/10/5 21:43

钛蒻了。。。二分写炸了。。。但惊奇的是TLE,并没WA

思想是二分最小员工数,check()就是判断这个数能不能由各部员工加出来。

然后。。。就没有然后了

code:

#include<bits/stdc++.h>
using namespace std;
const int maxn=25;
const int maxr=2e9;

int arr[maxn];

bool check(int num,int n)
{
  int res=0;
  for(int i=1;i<=n;i++)
  {
    if(res+arr[i]>num)return false;
    if(res+arr[i]==num)return true;
  }
  return false;
}

int main()
{
  int n=0,res=0;
  cin>>n;
  for(int i=1;i<=n;i++)
  {
    cin>>arr[i];
  }
  sort(arr+1,arr+n+1);
  int l=1;
  int r=maxr;
  while(l<=r)
  {
    int mid=(l+r)>>1;
    if(check(mid,n)==true)
    {
      res=mid;
      r=mid;
    }
    else
    {
      l=mid+1;
    }
  }
  cout<<res;
  return 0;
}

谢谢各位大佬!

2024/10/5 21:43
加载中...