P9231 [蓝桥杯 2023 省 A] 平方差

P9231 [蓝桥杯 2023 省 A] 平方差 - 洛谷

题目描述

给定 L,R,问 L≤x≤R 中有多少个数 x 满足存在整数 y,z 使得 x=y2−z2。

输入格式

输入一行包含两个整数 L,R,用一个空格分隔。

输出格式

输出一行包含一个整数满足题目给定条件的 x 的数量。

输入输出样例

输入 #1输出 #1
1 54

说明/提示

【样例说明】

  • 1=12−02
  • 3=22−12
  • 4=22−02
  • 5=32−22

【评测用例规模与约定】

  • 对于 40% 的评测用例,L,R≤5000;
  • 对于所有评测用例,1≤L≤R≤109。

第十四届蓝桥杯大赛软件赛省赛 C/C++ 大学 A 组 C

思路:

数学知识,

  1. 奇偶性分析

    • 情况 1:y 和 z 都是奇数或都是偶数
      • 如果 y 和 z 都是奇数或都是偶数,那么 y−z 和 y+z 的奇偶性相同。
      • 两个奇数或两个偶数相减和相加的结果都是偶数。
      • 因此,x 是两个偶数的乘积,即 x 是 4 的倍数。
    • 情况 2:y 和 z 一奇一偶
      • 如果 y 和 z 一奇一偶,那么 y−z 和 y+z 都是奇数。
      • 两个奇数相乘的结果是奇数。
      • 因此,x 是两个奇数的乘积,即 x 是奇数。

从上述分析可以看出,无论 y 和 z 的奇偶性如何,x=(y−z)×(y+z) 总是可以表示为两个奇偶性相同的数的乘积:

  • 如果 y 和 z 的奇偶性相同,x 是两个偶数的乘积(即 4 的倍数)。
  • 如果 y 和 z 的奇偶性不同,x 是两个奇数的乘积(即奇数)。

因此,表达式 x=(y−z)×(y+z) 保证了 x 可以被拆分成两个奇偶性相同的数的乘积。

代码如下:
 

#include <iostream>
#include <cmath>
#include <algorithm>
#include <cstring>
using namespace std;
typedef long long ll; 
ll j(ll x)
{if(x == 0)return 0;elsereturn (x+1)/2;
}
ll o(ll x)
{return x/4;
}
int main() 
{ll l,r;cin >> l >> r;cout << j(r) - j(l - 1) + o(r) - o(l - 1); return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/72097.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【GenBI优化】提升text2sql准确率:建议使用推理大模型,增加重试

引言 Text-to-SQL&#xff08;文本转 SQL&#xff09;是自然语言处理&#xff08;NLP&#xff09;领域的一项重要任务&#xff0c;旨在将自然语言问题自动转换为可在数据库上执行的 SQL 查询语句。这项技术在智能助手、数据分析工具、商业智能&#xff08;BI&#xff09;平台等…

<el-cascader时只取最后一级数据

在用cascader时只取最后一级数据传给后端 组件的属性emitPath: false就可以做到&#xff0c;取值就是最后一级传给后端。并且后端放回的id 也直接可以做回显 <el-cascaderv-model"Type":options"Options":props"{ value: id, label: label, chil…

`maturin`是什么:matu rus in python

maturin是什么 maturin 是一个用于构建和发布 Rust 编写的 Python 绑定库的工具。它简化了将 Rust 代码集成到 Python 项目中的过程,支持创建不同类型的 Python 包,如纯 Python 包、包含 **Rust (系统编程语言)**扩展模块的包等。以下为你详细介绍 maturin 的相关信息并举例…

流媒体网络协议全解析:从实时传输到自适应流,如何选择最优方案?

一、历史发展与协议提出者 流媒体协议的发展与互联网技术迭代紧密相关,主要分为三个阶段: 早期专有协议(1990s-2000s) RTSP/RTP 提出者:RealNetworks(RTSP初始推动者),后由IETF标准化(RFC 2326)。背景:1996年推出,用于视频监控和点播系统,基于UDP传输媒体流,支持…

mysql架构查询执行流程(图解+描述)

目录 mysql架构查询执行流程 图解 描述 mysql架构查询执行流程 图解 描述 用户连接到数据库后&#xff0c;由连接器处理 连接器负责跟客户端建立连接、获取权限、维持和管理连接 客户端发送一条查询给服务器 服务器先检查查询缓存&#xff0c;如果命中缓存&#xff0c;则立…

【QT问题】Ubantu环境下解决已经下载好的qt怎么添加或卸载其他组件

1、找到自己qt的安装目录->双击打开MaintenanceTool.exe 2、点击next进去&#xff0c;此时需要登录qt账户&#xff08;如果没有去官网注册一个&#xff0c;很快且免费&#xff09; 我这里随便填的账号&#xff0c;如果是正确的下面next就能够点击。 这里随便提一下&#xf…

CS50 使用 Python 进行人工智能简介-“骑士与流氓”谜题

如何使用逻辑推理来解决“骑士与骗子”&#xff08;Knights and Knaves&#xff09;类型的逻辑难题。具体来说&#xff0c;任务是根据每个角色的陈述推理出他们是“骑士”还是“骗子”。 任务背景&#xff1a; 骑士与骗子问题&#xff1a;每个角色要么是骑士&#xff0c;要么是…

每日学习Java之一万个为什么?[MySQL面试篇]

分析SQL语句执行流程中遇到的问题 前言1 MySQL是怎么在一台服务器上启动的2 MySQL主库和从库是同时启动保持Alive的吗&#xff1f;3 如果不是主从怎么在启动的时候保证数据一致性4 ACID原则在MySQL上的体现5 数据在MySQL是通过什么DTO实现的6 客户端怎么与MySQL Server建立连接…

详细解析d3dx9_27.dll丢失怎么办?如何快速修复d3dx9_27.dll

运行程序时提示“d3dx9_27.dll文件缺失”&#xff0c;通常由DirectX组件损坏或文件丢失引起。此问题可通过系统化修复方法解决&#xff0c;无需重装系统或软件。下文将详细说明具体步骤及注意事项。 一.d3dx9_27.dll缺失问题的本质解析 当系统提示“d3dx9_27.dll丢失”时&…

IP----访问服务器流程

这只是IP的其中一块内容-访问服务器流程&#xff0c;IP还有更多内容可以查看IP专栏&#xff0c;前一段学习内容为IA内容&#xff0c;还有更多内容可以查看IA专栏&#xff0c;可通过以下路径查看IA-----配置NAT-CSDN博客CSDN,欢迎指正 1.访问服务器流程 1.分层 1.更利于标准化…

Linux报 “device or resource busy” 异常的原因以及解决办法

首先&#xff0c;Linux报"device or resource busy"的原因是因为某个进程正在占用该设备或资源&#xff0c;导致其他进程无法访问该设备或资源。 解决该问题的办法有以下几种&#xff1a; 查找占用该设备或资源的进程&#xff0c;然后将其停止或结束。可以使用以下…

和鲸科技推出人工智能通识课程解决方案,助力AI人才培养

2025年2月&#xff0c;教育部副部长吴岩应港澳特区政府邀请&#xff0c;率团赴港澳宣讲《教育强国建设规划纲要 (2024—2035 年)》。在港澳期间&#xff0c;吴岩阐释了教育强国目标的任务&#xff0c;并与特区政府官员交流推进人工智能人才培养的办法。这一系列行动体现出人工智…

java springboot 中调用 C++ 方法

以下是一个完整的 Spring Boot 调用 C 方法的 Demo&#xff0c;采用 JNI (Java Native Interface) 方式实现&#xff0c;包含详细步骤说明&#xff1a; 1. 项目结构 demo-project/ ├── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/example/…

JSX基础 —— 识别JS表达式

在JSX中可以通过 大括号语法 { } 识别JS中的表达式&#xff0c;比如常见的变量、函数调用、方法调用等等 1、使用引号传递字符串 2、使用JavaScript变量 3、函数调用和方法调用 (函数和方法本质没有区别&#xff0c;这里默认&#xff1a; 函数是自己定义的&#xff0c;方法是…

git从零学起

从事了多年java开发&#xff0c;一直在用svn进行版本控制&#xff0c;如今更换了公司&#xff0c;使用的是git进行版本控制&#xff0c;所以打算记录一下git学习的点滴&#xff0c;和大家一起分享。 百度百科&#xff1a; Git&#xff08;读音为/gɪt/&#xff09;是一个开源…

关于对async和await的初步理解

async 包裹着的函数中进程是堵塞的 &#xff0c;是同步化的&#xff0c; await等待的是个promise对象&#xff0c;否则"await" 对此表达式的类型没有影响 例1 async getDataDD(){await this.fun1()await this.fun2()// await Promise.all([this.fun1(),this.fun…

MySQL—Keepalived+MySQL双主复制实现MySQL高可用

Keepalived原理&#xff1a; Keepalived 的原理主要基于虚拟路由冗余协议&#xff08;VRRP&#xff0c;Virtual Router Redundancy Protocol&#xff09;、健康检查机制和负载均衡机制&#xff0c;以下为你详细介绍&#xff1a; VRRP 协议实现高可用&#xff1a;VRRP 是 Keep…

SpringBoot AOP 源码解析

文章目录 一、AOP 代码示例1. 准备注解和目标类2. 定义 Aspect3. 结论 二、源码1. AOP 实现核心类2. 代理类的创建流程2.1 核心类 AbstractAutoProxyCreator2.2 AbstractAutoProxyCreator#postProcessBeforeInstantiation2.3 AspectJAwareAdvisorAutoProxyCreator#shouldSkip2.…

Linux:Shell环境变量与命令行参数

目录 Shell的变量功能 什么是变量 变数的可变性与方便性 影响bash环境操作的变量 脚本程序设计&#xff08;shell script&#xff09;的好帮手 变量的使用&#xff1a;echo 变量的使用&#xff1a;HOME 环境变量相关命令 获取环境变量 环境变量和本地变量 命令行…

MySQL数据库入门到大蛇尚硅谷宋红康老师笔记 高级篇 part 5

第05章_存储引擎 为了管理方便&#xff0c;人们把连接管理、查询缓存、语法解析、查询优化这些并不涉及真实数据存储的功能划分为MySQLserver的功能&#xff0c;把真实存取数据的功能划分为存储引擎的功能。所t以在MySQLserver完成了查询优化后&#xff0c;只需按照生成的执行…