京东技术运维工程师编程题(括号序列+疯狂数列)

编程题两道!
第一题括号序列(懵逼,不会做!)
第二题疯狂数列(122333444455555.......这种序列求输入n,求第n项的值)
第二题想了很久,最后发现是用等差数列知识可以求出来,但是最后时间紧迫点测试还未出结果就自动交卷了!(不知道有没有用???)
function find(n){
    var i=1;
    while(i*i+i<=n*2-1){
        i++;
    }
    return i;
}//自己想的,本地测试可以过,网页由于时间问题还未出结果就自动交卷了(~~~~(>_<)~~~~)

#京东#
全部评论
你好,想知道你这里的思考过程.谢谢~~     while(i*i+i<=n*2-1){         i++;     }     returni; }
点赞 回复 分享
发布于 2017-10-30 23:24
//求测试 #include<iostream> using namespace std; long long maxlimt = 1E18 + 2; int _tmain(int argc, _TCHAR* argv[]) { long long num; while (cin >> num &&1 <= num&&num <= maxlimt) { long long x = sqrt(1 + 8 * num) / 2; long long temp; if (x % 2 == 0) temp = (x / 2 * (x + 1)); else temp = (x + 1)*((x - 1) / 2) + (x-1) / 2 + 1; if (temp < num) { while (temp<=num) { x++; temp = temp + x; } } if (temp - num>x) x--; cout << x << endl; } return 0; }
点赞 回复 分享
发布于 2017-09-09 00:50

相关推荐

评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务