题解:洛谷 B4356 [GESP202506 二级] 数三角形

发布时间:2026/7/18 22:23:45

题解:洛谷 B4356 [GESP202506 二级] 数三角形
本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。欢迎大家订阅我的专栏算法题解C与Python实现附上汇总贴算法竞赛备考冲刺必刷题C | 汇总【题目来源】洛谷B4356 [GESP202506 二级] 数三角形 - 洛谷【题目描述】直角三角形有两条直角边与一条斜边设两条直角边的长度分别为a , b a,ba,b则直角三角形的面积为a b 2 \frac{ab}{2}2ab​。请你计算当直角边长a , b a,ba,b均取不超过n nn的正整数时有多少个不同的面积为整数的直角三角形。直角边长分别为a , b a,ba,b和a ′ , b ′ a,ba′,b′的两个直角三角形相同当且仅当a a ′ , b b ′ aa, bbaa′,bb′或者a b ′ , b a ′ ab, baab′,ba′。【输入】一行一个整数n nn表示直角边长的最大值。【输出】输出一行一个整数表示不同的直角三角形数量。【输入样例】3【输出样例】3【核心思想】问题分析给定上限n nn求直角边长a , b ∈ [ 1 , n ] a, b \in [1, n]a,b∈[1,n]的不同直角三角形中面积为整数的个数。面积为a b 2 \frac{ab}{2}2ab​要求为整数即a b abab为偶数。由于( a , b ) (a,b)(a,b)和( b , a ) (b,a)(b,a)视为相同三角形需避免重复计数。这是一个枚举 奇偶性判定问题核心在于利用面积公式简化条件并控制枚举顺序去重。算法选择有序枚举去重令b bb从a aa开始枚举确保a ≤ b a \leq ba≤b避免( a , b ) (a,b)(a,b)和( b , a ) (b,a)(b,a)重复奇偶性判定a b m o d 2 0 ab \bmod 2 0abmod20时面积为整数关键步骤读入数据读取n nn有序枚举a aa从1 11到n nnb bb从a aa到n nn若a × b m o d 2 0 a \times b \bmod 2 0a×bmod20c n t ← c n t 1 cnt \leftarrow cnt 1cnt←cnt1输出结果c n t cntcnt时间/空间复杂度时间复杂度O ( n 2 ) O(n^2)O(n2)枚举所有满足1 ≤ a ≤ b ≤ n 1 \leq a \leq b \leq n1≤a≤b≤n的数对空间复杂度O ( 1 ) O(1)O(1)仅使用计数器枚举去重与奇偶性分析的核心思想面积整数条件转化a b 2 ∈ Z ⇔ a b ≡ 0 ( m o d 2 ) \frac{ab}{2} \in \mathbb{Z} \Leftrightarrow ab \equiv 0 \pmod{2}2ab​∈Z⇔ab≡0(mod2)即a aa和b bb中至少有一个为偶数将几何问题转化为数论问题有序枚举去重通过约束a ≤ b a \leq ba≤b每个无序对{ a , b } \{a,b\}{a,b}只被计数一次避免( 2 , 3 ) (2,3)(2,3)和( 3 , 2 ) (3,2)(3,2)的重复。若使用b bb从1 11到n nn枚举会导致重复计数乘法奇偶性两数乘积为偶数当且仅当至少一数为偶数因此只需检查a b m o d 2 ab \bmod 2abmod2即可无需分别判断a aa和b bb的奇偶性适用于组合计数、有序枚举去重类基础问题【算法标签】#入门 #语法基础【代码详解】#includebits/stdc.husingnamespacestd;intmain(){intn;// 输入的上限值intcnt0;// 计数器统计满足条件的数对个数cinn;// 输入正整数n// 外层循环遍历所有可能的a值1到nfor(inta1;an;a){// 内层循环遍历所有可能的b值a到nfor(intba;bn;b){// 检查a和b的乘积是否为偶数if(a*b%20)cnt;// 满足条件则计数器加1}}// 输出满足条件的数对总数coutcntendl;return0;}【运行结果】3 3

相关新闻

台积电600亿资本支出背后的半导体设备采购逻辑与技术选型框架

台积电600亿资本支出背后的半导体设备采购逻辑与技术选型框架

2026/7/18 22:23:45

7月16日,台积电宣布将2026年资本支出大幅上调至600-640亿美元,同时宣布将在台湾兴建13座先进晶圆厂。这一事件是半导体设备“超级周期”的最强信号。一、半导体设备高景气周期的四重确认台积电600亿资本支出:每增加10亿美元,直接转…

Shell 基础核心:变量定义、环境配置与语法技巧全解析

Shell 基础核心:变量定义、环境配置与语法技巧全解析

2026/7/18 22:13:44

在 Linux 系统运维与开发过程中,Shell 作为核心交互工具,其变量的灵活运用与环境配置是提升操作效率、实现自动化运维的基础。本文将从普通变量的定义与使用、环境变量的配置与优化、命令替换与字符转义等核心维度,全面解析 Shell 变量相关的…

Three.js WebGL 安全加固实战:Shader 来源验证、WebGL 扩展沙箱与纹理域名白名单

Three.js WebGL 安全加固实战:Shader 来源验证、WebGL 扩展沙箱与纹理域名白名单

2026/7/18 22:13:44

Three.js WebGL 安全加固实战:Shader 来源验证、WebGL 扩展沙箱与纹理域名白名单 一、WebGL 安全——DApp 中被忽视的攻击面 Three.js 在 Web3 DApp 中的角色越来越重要——NFT 3D 画廊、链上数据可视化仪表盘、GameFi 游戏场景、元宇宙空间漫游,这些应用…

二十三种设计模式

二十三种设计模式

2026/7/19 2:44:04

创建型模式(5 种)核心思想:分离对象创建与使用,屏蔽实例化细节,降低耦合1.单例模式 (Singleton)保证类全局仅有一个实例,提供统一访问入口;适合全局唯一资源(…

用“芯”筑基智算未来 海光信息亮相WAIC

用“芯”筑基智算未来 海光信息亮相WAIC

2026/7/19 2:44:04

7月17日,以“智能伙伴,共创未来”为主题的2026世界人工智能大会(WAIC)在上海开幕。海光信息携CPU、DCU全系列产品以及网络互联、整机解决方案,亮相上海世博展览馆、张江科学会堂两大主题展区,全面展示了面向…

Android DataBinding与MVVM架构实战指南

Android DataBinding与MVVM架构实战指南

2026/7/19 2:44:04

1. Android DataBinding与MVVM架构解析DataBinding技术最早出现在2015年Google I/O大会,作为Android官方推出的数据绑定框架,它彻底改变了传统Android开发中UI更新的方式。记得我第一次在项目中使用DataBinding时,那种"数据变动自动更新…

NVIDIA Nemotron-3-Embed-8B:高性能文本嵌入模型实战指南

NVIDIA Nemotron-3-Embed-8B:高性能文本嵌入模型实战指南

2026/7/19 2:44:04

如果你正在为 RAG 系统、语义搜索或文本分类任务寻找一个既强大又高效的嵌入模型,那么 NVIDIA 最新发布的 Nemotron-3-Embed-8B 绝对值得你立刻关注。这个拥有 80 亿参数的模型,不仅在权威的 Massive Text Embedding Benchmark (MTEB) 排行榜上登顶&…

Google AI Mode应用连接技术解析:从对话到工作流自动化的架构实践

Google AI Mode应用连接技术解析:从对话到工作流自动化的架构实践

2026/7/19 2:44:04

如果你最近还在手动在 Instacart 上比价、在 Canva 里拖拽模板,那么 Google AI Mode 的最新更新可能会让你重新思考工作方式。这个看似简单的"支持链接应用"功能,背后实际上是 AI 从对话工具向工作流引擎的关键跃迁。过去几个月,各…

TI Camera ISP CSI-2A寄存器配置实战:从原理到避坑指南

TI Camera ISP CSI-2A寄存器配置实战:从原理到避坑指南

2026/7/19 2:34:03

1. 项目概述与核心价值在嵌入式视觉系统的开发中,图像信号处理器(ISP)的CSI-2接收器配置,往往是决定项目成败的关键一步,也是驱动工程师最容易“踩坑”的地方。很多开发者拿到一份动辄数百页的寄存器手册,面…

微服务进阶:服务网格与Istio

微服务进阶:服务网格与Istio

2026/7/19 0:03:49

541|微服务进阶:服务网格与Istio 上篇文章我们聊了微服务的基本概念和拆分方法。 但微服务多了,问题也多了: 服务之间怎么通信? 怎么监控每个服务的调用链路? 熔断、限流、重试怎么做? 安全认证怎么统一? 以前这些都靠SDK库(比如Hystrix、Feign),每个服务都要集成…

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

2026/7/19 0:03:49

一、零售门店全域协同业务背景与行业痛点 1.1 门店超级终端设备矩阵(连锁便利店/商超标准配置) 自助收银Kiosk一体机:顾客结算、自助核销优惠券、商品素材预览;运营折叠平板:店长后台商品上新、图片录入、活动配置、…

噗叽短视频界面分析

噗叽短视频界面分析

2026/7/19 0:03:49

1 和小红书类似,可以采用类似判断方法------------其实他比小红书好判断,因为他没有图片,控件位置几乎是固定的,都不用判断------------2 因为他没有点赞按钮------------而且几乎所有控件位置都是完全一样的,所以我就…

微服务进阶:服务网格与Istio

微服务进阶:服务网格与Istio

2026/7/19 0:03:49

541|微服务进阶:服务网格与Istio 上篇文章我们聊了微服务的基本概念和拆分方法。 但微服务多了,问题也多了: 服务之间怎么通信? 怎么监控每个服务的调用链路? 熔断、限流、重试怎么做? 安全认证怎么统一? 以前这些都靠SDK库(比如Hystrix、Feign),每个服务都要集成…

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

2026/7/19 0:03:49

一、零售门店全域协同业务背景与行业痛点 1.1 门店超级终端设备矩阵(连锁便利店/商超标准配置) 自助收银Kiosk一体机:顾客结算、自助核销优惠券、商品素材预览;运营折叠平板:店长后台商品上新、图片录入、活动配置、…

噗叽短视频界面分析

噗叽短视频界面分析

2026/7/19 0:03:49

1 和小红书类似,可以采用类似判断方法------------其实他比小红书好判断,因为他没有图片,控件位置几乎是固定的,都不用判断------------2 因为他没有点赞按钮------------而且几乎所有控件位置都是完全一样的,所以我就…