京东算法笔试第一题很简单,为什么就是只能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
这个是什么思路
点赞 回复 分享
发布于 2017-09-08 21:19
long long
点赞 回复 分享
发布于 2017-09-08 21:17
向上取整不就一下完事了吗?
点赞 回复 分享
发布于 2017-09-08 21:14
long long
点赞 回复 分享
发布于 2017-09-08 21:13
因为你这个超时了吧。
点赞 回复 分享
发布于 2017-09-08 21:12
我long完就全AC了
点赞 回复 分享
发布于 2017-09-08 21:12
要分情况讨论,当8*n+1开方是整数时,结果不一样
点赞 回复 分享
发布于 2017-09-08 21:12
python 的话怎么办。。。
点赞 回复 分享
发布于 2017-09-08 21:10
用long类型
点赞 回复 分享
发布于 2017-09-08 21:10

相关推荐

04-06 16:59
已编辑
河南工业大学 Java
牛牛牛的牛子:最好扔了,实在没有选择的选择
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
03-29 08:32
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务