小工具知识网

当前位置: 首页 > 行业知识 > 蓝桥杯2023年-平方差(数学)

行业知识

蓝桥杯2023年-平方差(数学)

2026-11-15 01:14:00 来源:互联网转载

题目描述

index.php/tags-41973.html" >���定 L, R,问 L ≤ x ≤ R 中有多少个数 x 满足存在整数 y,z 使得 x = y2 − z2。

()

思路

首先想到:x²-y²=(x+y)(x-y),首先如果是奇数2*n+1,肯定可以分成(n+1+n)*(n+1-n)的形式,所以奇数是肯定可行的,然后是偶数2*n,如果凑成(x+y)*(x-y)的形式,则(x+y)或(x-y)中的一个肯定是偶数,并且当一个是偶数时,另一个也肯定是偶数。所以肯定是4的倍数的偶数才符合条件。

所以可以直接算出从1到n中有多少个数是4的倍数(n/4),有多少个数是奇数((n+1)/2)。

()

代码:

#includeusing namespace std;int main(){    int a,b;        cin>>a>>b;    a--;//不包含的范围,所以要去除边界。    int l=a/4+(a+1)/2;    int r=b/4+(b+1)/2;    cout

上一篇:vivo手机软件下载指南

下一篇:方舟怎么删除收藏的服务器?