京东算法笔试第一题很简单,为什么就是只能AC40%

#include <iostream>
#include <math.h>
using namespace std;
int main(){
int n;
cin>>n;
double m;
m=(sqrt(double(1+8*n))-1.0)/2.0;      
int x=(int)m;
float k;
k=m-(float)x;
if(k>0.0)
x++;
cout<<x;
return 0;
}
全部评论
经过求解算出来的解x,直接return int(math.ceil(x))就可以AC了
点赞
送花
回复
分享
发布于 2017-09-08 21:14
用long类型
点赞
送花
回复
分享
发布于 2017-09-08 21:10
滴滴
校招火热招聘中
官网直投
python 的话怎么办。。。
点赞
送花
回复
分享
发布于 2017-09-08 21:10
要分情况讨论,当8*n+1开方是整数时,结果不一样
点赞
送花
回复
分享
发布于 2017-09-08 21:12
我long完就全AC了
点赞
送花
回复
分享
发布于 2017-09-08 21:12
因为你这个超时了吧。
点赞
送花
回复
分享
发布于 2017-09-08 21:12
long long
点赞
送花
回复
分享
发布于 2017-09-08 21:13
向上取整不就一下完事了吗?
点赞
送花
回复
分享
发布于 2017-09-08 21:14
long long
点赞
送花
回复
分享
发布于 2017-09-08 21:17
这个是什么思路
点赞
送花
回复
分享
发布于 2017-09-08 21:19

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务