欢迎光临散文网 会员登陆 & 注册

华为 OD 机考:勾股数元组

2023-08-23 18:21 作者:发量迷人的乔喻  | 我要投稿

华为 OD 机试【4 大宝典】再次上新题!

① Python 解华为机试题 :https://dream.blog.csdn.net/article/details/129221789
② C++ 解华为机试题:https://dream.blog.csdn.net/article/details/129472919
③ Java 解华为机试题:https://dream.blog.csdn.net/article/details/129652513
④ C 解华为机试题:https://dream.blog.csdn.net/article/details/129658432

华为 OD 机考:勾股数元组

如果 3 个正整数(a,b,c)满足 a2 + b2 = c2 的关系,则称(a,b,c)为勾股数(著名的勾三股四弦五),为了探索勾股数的规律,我们定义如果勾股数(a,b,c)之间两两互质(即 a 与 b,a 与 c,b 与 c 之间均互质,没有公约数),则其为勾股数元祖(例如(3,4,5)是勾股数元祖,(6,8,10)则不是勾股数元祖)。请求出给定范围[N,M]内,所有的勾股数元祖。

输入输出描述:

输入描述:

起始范围 N,1 <= N <= 10000

结束范围 M,N < M <= 10000

输出描述:

a,b,c 请保证 a < b < c,输出格式:a b c;

多组勾股数元祖请按照 a 升序,b 升序,最后 c 升序的方式排序输出;

给定范围中如果找不到勾股数元祖时,输出”NA”。

示例 1:

输入

1 20

输出

3 4 5 5 12 13 8 15 17

题解地址 📤

  • ⭐️ 华为 OD 机考 JAVA https://dream.blog.csdn.net/article/details/129052829

  • ⭐️ 华为 OD 机考 Python https://dream.blog.csdn.net/article/details/129191549

  • ⭐️ 华为 OD 机考 C++ https://dream.blog.csdn.net/article/details/129201772

  • ⭐️ 华为 OD 机考真 C 语言 https://dream.blog.csdn.net/article/details/129371440

  • ⭐️ 华为 OD 机考 JS https://dream.blog.csdn.net/article/details/129351450

  • ⭐️ 华为 OD 机考 Golang https://dream.blog.csdn.net/article/details/130756157

华为 OD 机试

华为 OD 机试是一种面向开发人员的在线笔试,旨在测试开发人员的编程能力、算法基础和基础知识掌握情况。

一、题目解析

华为 OD 机试的编程题则考察开发人员的编程能力、算法基础和解决问题的能力。

二、考点分析

  1. 数据结构:链表、栈、队列、二叉树等。

  2. 算法基础:排序、查找、分治、动态规划、贪心等。

  3. 编程语言特性:语法、标准库、常用操作等。

  4. 系统设计:数据库设计、系统架构、网络通信等。

三、解题思路

  1. 编程题:首先读懂题目,明确题目要求和输入输出格式。然后分析问题,选择合适的算法和数据结构解决问题。在编写代码的过程中,要注意代码的简洁性、可读性和健壮性。

四、代码示例

  1. 选择题代码示例:给定一个整数数组,找出数组中第二大的元素。

def find_second_largest(nums):    largest = -1    second_largest = -1    for num in nums:        if num > largest:            second_largest = largest            largest = num        elif num > second_largest and num < largest:            second_largest = num    return second_largest

  1. 编程题代码示例:给定一个字符串,找出其中的最长回文子串。

def longest_palindrome(s):    if len(s) < 2:        return s    max_len = 1    start = 0    for i in range(len(s)):        if i - max_len >= 1 and s[i - max_len - 1:i + 1] == s[i - max_len - 1:i + 1][::-1]:            start = i - max_len - 1            max_len += 2            continue        if s[i - max_len:i + 1] == s[i - max_len:i + 1][::-1]:            start = i - max_len            max_len += 1    return s[start:start + max_len]

五、总结

华为 OD 机试是一种针对开发人员的在线笔试,主要考察开发人员的编程能力、算法基础和基础知识掌握情况。在准备机试时,需要加强算法和数据结构的训练,同时还要熟悉常用的编程语言和开发工具。在解题时,需要仔细读题,理清思路,选择合适的方法解决问题。最后,要注意代码的简洁性、可读性和健壮性。


华为 OD 机考:勾股数元组的评论 (共 条)

分享到微博请遵守国家法律