栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 3768 Continuous Login

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 3768 Continuous Login

#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<string>#include<algorithm>#define ll long longusing namespace std;int dp[20005];int len;int erfen(int x){    int l=1,r=len;    int mid;    mid=(l+r)>>1;    while(r>l)    {        if(dp[mid]==x) return mid;        if(dp[mid]<x) l=mid+1;        else r=mid-1;        mid=(l+r)>>1;    }    if(dp[l]>x) l--;    return l;}int main(){    int i;    dp[0]=0;    dp[1]=1;    for(i=1;i<=20000;i++)    {        dp[i]=dp[i-1]+i;        if(dp[i]>=123456789) break;    }    len=i;    int tes,n;    cin>>tes;    int a,b,c;    while(tes--)    {        cin>>n;        int p=erfen(n);        if(dp[p]==n)        { printf("%dn",p); continue;        }        int flag=0;        for(a=p;a>=1;a--)        { b=erfen(n-dp[a]); if(dp[b]+dp[a]==n) {     flag=1;     break; }        }        if(flag)        { printf("%d %dn",a,b); continue;        }        flag=0;        for(a=p;a>=1;a--)        { int s=erfen(n-dp[a]); for(b=s;b>=1;b--) {     c=erfen(n-dp[a]-dp[b]);     if(dp[a]+dp[b]+dp[c]==n)     {         flag=1;         break;     } } if(flag) break;        }        if(flag)        { printf("%d %d %dn",a,b,c); continue;        }    }}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/376443.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号