完全平方数的个数

描述

给定整数区间[A,B]问其中有多少个完全平方数。

输入
多组数据,包含两个正整数A,B 1<=A<=B<=2000000000。
输出
每组数据输出一行包含一个整数,表示闭区间[A,B]中包含的完全平方数的个数。
样例输入
1 1
1 2
3 10
3 3
样例输出
1
1
2
0
 1 import java.util.Scanner;
 2
 3 public class Main {
 4     public static void main(String[] args) {
 5         Scanner scanner=new Scanner(System.in);
 6         int a;
 7         int b;
 8         int start;
 9         int end;
10
11         while(scanner.hasNext()){
12             a=scanner.nextInt();
13             b=scanner.nextInt();
14
15             start=(int)Math.ceil(Math.sqrt(a));
16             end=(int)Math.floor(Math.sqrt(b));
17             System.out.println(end-start+1);
18         }
19     }
20 }
21
22             
 
时间: 2024-10-26 16:16:44

完全平方数的个数的相关文章

第五届在线编程大赛月赛第一题:完全平方数的个数

第五届在线编程大赛月赛第一题:完全平方数的个数 题目详情: 给定整数区间[A,B]问其中有多少个完全平方数. 输入格式: 多组数据,包含两个正整数A,B 1<=A<=B<=2000000000. 输出格式: 每组数据输出一行包含一个整数,表示闭区间[A,B]中包含的完全平方数的个数. 答题说明: 输入样例 1 1 1 2 3 10 3 3 输出样例: 1 1 2 0 java代码: import java.util.Scanner; public class One { public s

NYOJ 完全平方数的个数

完全平方数的个数 时间限制:6500 ms  |  内存限制:65535 KB 难度:2 描述 给定整数区间[A,B]问其中有多少个完全平方数. 输入 多组数据,包含两个正整数A,B 1<=A<=B<=2000000000. 输出 每组数据输出一行包含一个整数,表示闭区间[A,B]中包含的完全平方数的个数. 样例输入 1 1 1 2 3 10 3 3 样例输出 1 1 2 0 #include<cstdio> #include<cstdlib> #include&

华为机试—亮着电灯的盏数(求完全平方数的个数)

题目:亮着电灯的盏数 一条长廊里依次装有n(1≤n≤65535)盏电灯,从头到尾编号1.2.3.-n-1.n.每盏电灯由一个拉线开关控制.开始,电灯全部关着. 有n个学生从长廊穿过.第一个学生把号码凡是1的倍数的电灯的开关拉一下:接着第二个学生把号码凡是2的倍数的电灯的开关拉一下:接着第三个学生把号码凡是3的倍数的电灯的开关拉一下:如此继续下去,最后第n个学生把号码凡是n的倍数的电灯的开关拉一下.n个学生按此规定走完后,长廊里电灯有几盏亮着. 注:电灯数和学生数一致.不能写笨拙的双重循环(优化过

华为机试—亮着电灯的盏数(1—N完全平方数的个数)

题目:亮着电灯的盏数 一条长廊里依次装有n(1≤n≤65535)盏电灯,从头到尾编号1.2.3.-n-1.n.每盏电灯由一个拉线开关控制.开始,电灯全部关着. 有n个学生从长廊穿过.第一个学生把号码凡是1的倍数的电灯的开关拉一下:接着第二个学生把号码凡是2的倍数的电灯的开关拉一下:接着第三个学生把号码凡是3的倍数的电灯的开关拉一下:如此继续下去,最后第n个学生把号码凡是n的倍数的电灯的开关拉一下.n个学生按此规定走完后,长廊里电灯有几盏亮着. 注:电灯数和学生数一致.不能写笨拙的双重循环(优化过

BZOJ 2440: [中山市选2011]完全平方数(二分答案 + 莫比乌斯函数 + 容斥原理)

传送门 2440: [中山市选2011]完全平方数 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2693  Solved: 1307[Submit][Status][Discuss] Description 小 X 自幼就很喜欢数.但奇怪的是,他十分讨厌完全平方数.他觉得这些 数看起来很令人难受.由此,他也讨厌所有是完全平方数的正整数倍的数.然而 这丝毫不影响他对其他数的热爱. 这天是小X的生日,小 W 想送一个数给他作为生日礼物.当然他不能送

BZOJ2440(完全平方数)二分+莫比乌斯容斥

题意:完全平方数是指含有平方数因子的数.求第ki个非完全平方数. 解法:比较明显的二分,getsum(int middle)求1-middle有多少个非完全平方数,然后二分.求1-middle的非完全平方数个数可以用总数减掉完全平方数个数.计算完全平方数的个数用容斥: 首先加上n/(2*2)+n/(3*3)+n/(5*5)+n/(7*7)...+...然后减掉出现两次的,然后加上三次的...奇加偶减.这就是mou的原型,用mou数组计算很简单: 代码: /********************

BZOJ 2440 完全平方数(莫比乌斯反演+二分查找)

题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=23362 题意:定义含有平方数因子的数为完全平方数(平方数因子不包含1).求第k个非完全平方数. 思路:我们先求出[1, n]的非完全平方数的个数,然后利用二分来查找正好等于k时的n(注意这样的n可能不止一个,求最左边的).关键是,怎么求出前者,我们可以利用容斥原理,用n - [1, n]内完全平方数的个数,求[1, n]内完全平方数的个数,用容斥发现前面的系数就是

[LeedCode]279. 完全平方数

题目描述: 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n.你需要让组成和的完全平方数的个数最少. 示例 1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例 2: 输入: n = 13 输出: 2 解释: 13 = 4 + 9. 解法一:利用数学方法(四平方定理)解决 参考:https://blog.csdn.net/qq_17550379/article/details/80875782 四平方定理:每个正整

LeetCode试炼之路之(2):完全平方数

题目来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/perfect-squares 给定正整数?n,找到若干个完全平方数(比如?1, 4, 9, 16, ...)使得它们的和等于 n.你需要让组成和的完全平方数的个数最少. 示例?1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例 2: 输入: n = 13 输出: 2 解释: 13 = 4 + 9. 解: 思路:本题主要应用到队列及BFS(广度优先算法)