华为OD机试真题-用连续自然数之和来表达整数-2023年OD统一考试(C卷)---python代码免费

题目:
在这里插入图片描述

代码

"""
题目分析:
一个整数
连续的自然数之和表示(非负整数)

输入:
一个整数T[1,1000]
输出:
输出多个表达式,自然数个数最少优先输出
最后一行, 输出“Result : 个数”
思路:
循环+逻辑判断处理(关键点,连续的自然数)

1=1
2=2
3=3
3=1+2
4=4
5=5
5=2+3
6=6
6=1+2+3

t = a + (a+1) + ... + a(n-1)=na + n(n-1)/2
a = (t-n(n-1)/2)/n
分析,这里的n不可能大于t/2, 如果大于,则不可能出现新的解
"""
# import math
# t = 5
# # 单独判断1和2
# if t in [1, 2]:
#     print(f"{t}={t}")
#     print(f"Result: 1")
# temp_list = list()
# for i in range(1, math.ceil(t/2)):
#     a = (t-i*(i-1)//2)//i
#     # 添加a 大于0
#     if a > 0 and t == i*a + i*(i-1)/2:
#         temp_list.append([i, a])
# # print(temp_list)
# for j in temp_list:
#     if j[0] == 1:
#         print(f"{t}={t}")
#     else:
#         temp = list(range(j[1], j[1]+j[0], 1))
#         print(f"{t}=" + "+".join(map(str, temp)))
# if t >2:
#     print(f"Result: {len(temp_list)}")

# 优化
import math
t = 9
# 单独判断1和2
if t in [1, 2]:
    print(f"{t}={t}")
    print(f"Result: 1")
temp_list = list()
for i in range(1, math.ceil(t/2)):
    a = (t-i*(i-1)//2)//i
    # 添加a 大于0, 否则会有负数的可能(t=1000时)
    if a > 0 and t == i*a + i*(i-1)/2:
        temp_list.append([a+z for z in range(i)])
# print(temp_list)

for j in temp_list:
    print(f"{t}=" + "+".join(map(str, j)))
if t >2 :
    print(f"Result: {len(temp_list)}")

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[计网底层小探索]:实现并部署多线程并发Tcp服务器框架(基于生产者消费者模型的线程池结构)

文章目录 一.网络层与传输层协议sockaddr结构体继承体系(Linux体系)贯穿计算机系统的网络通信架构图示: 二.实现并部署多线程并发Tcp服务器框架线程池模块序列化反序列化工具模块通信信道建立模块服务器主体模块任务回调模块(根据具体应用场景可重构)Tips:DebugC代码过程中遇到…

4.Spring MVC入门

文章目录 1. HTTP协议2. Spring MVC2.1. 三层架构2.2. MVC(解决表现层的问题)2.3. 核心组件 3. Thymeleaf3.1. 模板引擎3.2. Thymeleaf3.3. 常用语法 代码 1. HTTP协议 网址:https://www.ietf.org/ (官网网址) https:…

oppo手机如何录屏?解锁录屏新功能!

“最近换了一款oppo手机,感觉它的拍照功能真的很强大。但除此之外,我发现oppo还有许多隐藏功能,比如录屏。但我尝试了很久,都没找到录屏的开关在哪里。有没有哪位oppo用户知道怎么打开这个功能呢?” 随着科技的不断发…

几个常见的C/C++语言冷知识

当涉及到C/C语言时,有一些冷知识可能并不为人所熟知,但却可以让你更深入地理解这门古老而强大的编程语言。以下是一些有趣的C/C语言冷知识。 1. 数组的下标可以是负数 在我们日常的C语言编程中,数组是一个非常常见的数据结构。我们习惯性地使…

opencv python投影变换效果

变换原理: https://www.cnblogs.com/txwtech/p/18024547 python示范代码: src2原图,4个坐标点 dst2转换后,4个坐标点 p_touyin cv2.getPerspectiveTransform(src2,dst2) #计算投影变换矩阵 #利用矩阵值进行图像投影变换 r…

TCP 三次握手和四次挥手

为了准确无误地把数据送达目标处,TCP协议采用了三次握手策略。 1 TCP 三次握手漫画图解 如下图所示,下面的两个机器人通过3次握手确定了对方能正确接收和发送消息(图片来源网络)。 简单示意图: 客户端–发送带有 SYN 标志的数据包–一次握手…

jmeter下载base64加密版pdf文件

一、何为base64加密版pdf文件 如下图所示,接口jmeter执行后,返回一串包含大小写英文字母、数字、、/、的长字符串,直接另存为pdf文件后,文件有大小,但是打不开;另存为doc文件后,打开可以看到和…

Linux多线程服务端编程:使用muduo C++网络库 学习笔记 第十二章 C++经验谈(一)

作者对C的基本态度是“练从难处练,用从易处用”,因此本章有几节“负面”的内容。作者坚信软件开发一定要时刻注意减少不必要的复杂度,一些花团锦簇的招式玩不好反倒会伤到自己。作为应用程序的开发者,对技术的运用要明智&#xff…

Pandas时间序列数据补全

一、问题 时间序列数据缺失,将其补全。 如下图所示,数据存在缺失秒级的情况 二、方法 1、需要将时间戳字段设置成 df 的索引 2、使用df.resample()方法 (1)上采样(将上一条数据作为当前缺失数据) resample()中的参数&#x…

基于深度学习的子图计数方法

背景介绍 子图计数(Subgraph Counting)是图分析中重要的研究课题。给定一个查询图 和数据图 , 子图计数需要计算 在 中子图匹配的(近似)数目 。一般我们取子图匹配为子图同构语义,即从查询图顶点集 到数据图顶点集 的…

pitch、yaw、roll

pitch、yaw、roll是描述物体在空间中旋转的术语,通常用于计算机图形学或航空航天领域中。这些术语描述了物体绕不同轴旋转的方式: Pitch(俯仰):绕横轴旋转,使物体向前或向后倾斜。俯仰角度通常用来描述物体…

基于Java+小程序点餐系统设计与实现(源码+部署文档)

博主介绍: ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精彩专栏 推荐订阅 👇🏻 不然下次找不到 Java项目精品实…

C#上位机与三菱PLC的通信09---开发自己的通讯库(A-3E版)

1、A-3E报文回顾 具体细节请看: C#上位机与三菱PLC的通信05--MC协议之QnA-3E报文解析 C#上位机与三菱PLC的通信06--MC协议之QnA-3E报文测试 2、为何要开发自己的通讯库 前面开发了自己的A-1E协议的通讯库,实现了数据的读写,对于封装的通…

vue中切换tab时echart不显示或显示不正常

项目中在不同的tab中都使用了echart,但是在切换tab的时候发现第二个tab没有正常显示,通过排查代码和网上查阅才发现是因为element是通过display来控制tab的显示的,没有点击tab2的时候第二个echart图表的容器是 display:none,echar…

压缩感知常用的重建算法

重建算法的基本概念 在压缩感知(Compressed Sensing, CS)框架中,重建算法是指将从原始信号中以低于奈奎斯特率采集得到的压缩测量值恢复成完整信号的数学和计算过程。由于信号在采集过程中被压缩,因此重建算法的目标是找到最符合…

一文了解大数据生态

大数据一词最早指的是传统数据处理应用软件无法处理的过于庞大或过于复杂的数据集。 现在,对“大数据”一词的使用倾向于使用预测分析、用户行为分析或者其他一些从大数据中提取价值的高级数据分析方法,很少用于表示特定规模的数据集。 定义 大数据是…

FariyGUI × Cocos Creator 入门

前言 程序员向的初探Cocos Creator结和FairyGUI的使用,会比较偏向FairyGUI一点,默认各位读者都熟练掌握Cocos Creator以及js/ts脚本编写。 初探门径,欢迎大佬指教,欢迎在评论区或私信与本人交流,谢谢! 下…

微服务篇之雪崩、降级和熔断

一、服务雪崩 服务雪崩:一个服务失败,导致整条链路的服务都失败的情形。 二、服务降级 服务降级是服务自我保护的一种方式,或者保护下游服务的一种方式,用于确保服务不会受请求突增影响变得不可用,确保服务不会崩溃。 …

docker pullpush 生成镜像文件并push 到阿里云

pull docker docker pull ultralytics/ultralytics # 拉取yolov8的镜像仓库 docker run -it ultralytics/ultralytics # 运行镜像 conda create -n gsafety python3.8 # 创建环境 source activate gsafety # 激活环境 pip install -i https://pypi.tuna.tsinghua.edu.cn/simp…

C++ Primer 笔记(总结,摘要,概括)——第7章 类

目录 ​编辑 7.1 定义抽象数据类型 7.1.1 设计Sales_data类 7.1.2 定义改进的Sales_data类 7.1.3 定义类相关的非成员函数 7.1.4 构造函数 7.1.5 拷贝、赋值和析构 7.2 访问控制和封装 7.2.1 友元 7.3 类的其他特性 7.3.1 类成员再探 7.3.2 返回*this的成员函数 7.3.3 类类…
最新文章