UVALive 7500 Boxes and Balls (二分)

来源:互联网 发布:施工动画软件 编辑:程序博客网 时间:2024/06/05 18:00
#include<bits/stdc++.h>typedef unsigned long long ull;using namespace std;int main(){    int case1=1,t;    cin>>t;    ull x,sum;    while(t--)    {          cin>>x;          ull l,r,mid;          l=1;r=2e9;          int flag=1;          while(l<=r)          {                mid=(l+r)/2;                sum=mid*(mid+1)/2;                if(sum==x)                {                    flag=0;                    cout<<"Case #"<<case1<<": "<<sum<<endl;                    break;                }                else if(sum<x)                {                    l=mid+1;                }                else                {                    r=mid-1;                }          }          if(flag)          {              sum=r*(r+1)/2;              cout<<"Case #"<<case1<<": "<<sum<<endl;          }          case1++;    }    return 0;}

0 0
原创粉丝点击