完全平方数

完全平方数

https://ac.nowcoder.com/acm/problem/14733

完全平方数

链接:https://ac.nowcoder.com/acm/problem/14733

多次查询[l,r]范围内的完全平方数个数 定义整数x为完全平方数当且仅当可以找到整数y使得y*y=x

输入描述:

第一行一个数n表示查询次数
之后n行每行两个数l,r

输出描述:

对于每个查询,输出一个数表示答案

数据范围

n <= 100000
0<= l <= r <= 1000000000

solution

根据数据范围可以知道这道题不能暴力做,容易tle掉
可以通过找寻一个O(1)查找此范围在哪两个平方数范围内

#include<bits/stdc++.h>
using namespace std;
int l,r,n;
int main()
{
    cin>>n;
    while(n--)
    {
        cin>>l>>r;
        int x=sqrt(l),y=sqrt(r);
        if(x*x<l)
            x++;
        cout<<y-x+1<<endl;
    }
}
全部评论

相关推荐

03-03 23:12
已编辑
北京邮电大学 Java
书海为家:我来给一点点小建议,因为毕竟还在学校不像工作几年的老鸟有丰富的项目经验,面试官在面试在校生的时候更关注咱们同学的做事逻辑和思路,所以最好在简历中描述下自己做过项目的完整过程,比如需求怎么来的,你对需求的解读,你想到的解决办法,遇到困难如何找人求助,最终项目做成了什么程度,你从中收获了哪些技能,你有什么感悟。
你的简历改到第几版了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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