zoukankan      html  css  js  c++  java
  • AtCoder Beginner Contest 174 E

    题意 :给你N个木头,长度分别是ai 

    让你切K次,

    切完后,让你求长度最大的木头最小值,(最大值最小)

    题解 

    考虑一个value ,我切K次能不能保证所有木头都小于value

    一个木块的长度为len,那切完后小于等于value,就需要 (len-1)/value 次  (上取整-1,手玩一下想想)

    所以二分一下找一下这个value就行了

    #include<bits/stdc++.h>
    #define pb push_back
    #define fi first
    #define se second
    #define io std::ios::sync_with_stdio(false)
    using namespace std;
    typedef long long ll;
    typedef pair<int,int> pii;
    const int P = 1e9+7, INF = 0x3f3f3f3f;
    int gcd(int a,int b)
    {
        return b?gcd(b,a%b):a;
    }
    int qpow(int a,int n)
    {
        int r=1%P;
        for (a%=P; n; a=a*a%P,n>>=1)if(n&1)r=r*a%P;
        return r;
    }
    const int maxn=2e5+50;
    int a[maxn];
      int n,k;
    int check(int x)
    {  int kk=0;
       for(int i=1;i<=n;i++)
       {
        kk+=(a[i]-1)/x;
       }
       if(kk>k)
        return 0;
       else
        return 1;
    }
    int main()
    {
      cin>>n>>k;
      for(int i=1;i<=n;i++)
      {
          cin>>a[i];
      }
      int l=1,r=1e9;
      int ans=0;
      while(l<=r)
      {
          int mid=(l+r)/2;
          if(check(mid))
          {
              r=mid-1;
              ans=mid;
          }
          else
          {
              l=mid+1;
          }
      }
      cout<<ans<<endl;
    }
  • 相关阅读:
    各进制转换
    免root xshell连接termux
    sqlmap怎么拿shell
    SSRF漏洞
    国外安全网站、社区论坛、博客、公司、在线工具等整合收集
    渗透测试常用工具问题总结
    cdn绕过
    xss注入
    永恒之蓝(msf17010)kali复现
    文件上传漏洞和绕过
  • 原文地址:https://www.cnblogs.com/acmLLF/p/13426655.html
Copyright © 2011-2022 走看看