HDU 4476 Cut the rope

来源:互联网 发布:中国汽车出口现状知乎 编辑:程序博客网 时间:2024/05/21 21:49

题意:

每一条绳子可以剪一次,可以不剪。最多可以得到多少段一样长的绳子。

#include <cstdio>#include <cstring>#include <cmath>#include <iostream>#include <algorithm>#include <stack>#include <queue>using namespace std;const int N = 100009;int re[N],s[N];int n;int main(){  //  freopen("in.txt","r",stdin);    int cas;    scanf("%d",&cas);    while(cas--)    {        scanf("%d",&n);        memset(re,0,sizeof(s));        int a;        for(int i=0;i<n;i++)        {            scanf("%d",&a);            re[a]++;        }        for(int i=1;i<N;i++)        s[i] = s[i-1]+re[i];        int ans = 0;        for(int i=1;i<N;i++)        if(re[i])        {            int tmp=n - s[((i-1)>>1)];                tmp+=re[i];            ans = max(ans,tmp);        }        cout<<ans<<endl;    }    return 0;}


原创粉丝点击