1049 数列的片段和 (20 分) //运行超时

简介: 1049 数列的片段和 (20 分) //运行超时

1049 数列的片段和 (20 分)


给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列 { 0.1, 0.2, 0.3, 0.4 },我们有 (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 这 10 个片段。


给定正整数数列,求出全部片段包含的所有的数之和。如本例中 10 个片段总和是 0.1 + 0.3 + 0.6 + 1.0 + 0.2 + 0.5 + 0.9 + 0.3 + 0.7 + 0.4 = 5.0。

输入格式:

输入第一行给出一个不超过 105 的正整数 N,表示数列中数的个数,第二行给出 N 个不超过 1.0 的正数,是数列中的数,其间以空格分隔。

输出格式:

在一行中输出该序列所有片段包含的数之和,精确到小数点后 2 位。

输入样例:

4
0.1 0.2 0.3 0.4

输出样例:

5.00

 


根据题意,容易写出这样的代码,结果两处测试点运行超时。

 

#include<iostream>
using namespace std;
float sum_atob(float*arr, float a, float b);
int main()
{
  int N;
  cin >> N;
  float* a = new float[N];
  for (int i = 0; i < N; i++) {
    cin >> a[i];
  }
  float sum = 0;
  for (int i = 0; i < N; i++) {
    for (int j = i; j < N; j++) {
      sum += sum_atob(a, i, j);
    }
  }
 
  printf("%.2f",sum);
  return 0;
}
float sum_atob(float*arr, float a, float b) {
  float sum = 0;
  for (int i = a; i <= b; i++)
    sum += arr[i];
  return sum;
}

还有一种就是找规律了。每一个数出现的次数和它的位置有关系。

注意类型是double,如果是float会部分错误。

#include<iostream>
using namespace std;
int main()
{
  int N;
  cin >> N;
  double* a = new double[N+1];
  double sum = 0;  
  for (int i = 1; i <= N; i++) {
    cin >> a[i];
    sum = sum + a[i] * i * (N - i + 1);
  }
  printf("%.2f\n",sum);
  return 0;
}
相关文章
|
数据安全/隐私保护 Docker 容器
厉害了,如何搭建一套自己的私有网盘?
本文教大家用docker搭建一款自己的私有网盘,教程给大家分享一下。 开源云盘选择 搭建前我仔细看了一下各个开源私有云盘的实现,有以下几种:
579 0
厉害了,如何搭建一套自己的私有网盘?
|
8月前
|
供应链 项目管理 容器
深入探索 BPMN、CMMN 和 DMN:从定义到应用的全方位解析
在当今快速变化的商业环境中,对象管理组织(OMG)推出了三种强大的建模标准:BPMN(业务流程模型和符号)、CMMN(案例管理模型和符号)和DMN(决策模型和符号)。它们分别适用于结构化流程管理、动态案例处理和规则驱动的决策制定,并能相互协作,覆盖更广泛的业务场景。BPMN通过直观符号绘制固定流程;CMMN灵活管理不确定的案例;DMN以表格形式定义清晰的决策规则。三者结合可优化企业效率与灵活性。 [阅读更多](https://example.com/blog)
深入探索 BPMN、CMMN 和 DMN:从定义到应用的全方位解析
|
7月前
|
人工智能 自然语言处理 算法
全模态模型Qwen2.5-Omni开源,7B尺寸实现全球最强性能
通义千问Qwen2.5-Omni-7B正式开源,作为首个端到端全模态大模型,支持文本、图像、音频和视频等多种输入形式,实时生成文本与自然语音合成输出。它在多模态融合任务测评中刷新纪录,性能远超同类模型。Qwen2.5-Omni采用Thinker-Talker双核架构,实现语义理解与语音生成高效协同,以小尺寸7B参数让全模态大模型广泛应用成为可能,现已在魔搭社区和Hugging Face同步开源。
全模态模型Qwen2.5-Omni开源,7B尺寸实现全球最强性能
|
11月前
|
传感器 人工智能 监控
《数据流驱动:C++构建 AI 模型持续学习新范式》
本文探讨了如何利用C++开发基于数据流的人工智能模型持续学习系统,覆盖了从数据接入、预处理、模型训练与更新、评估监控到输出应用的全流程。文章强调了C++在处理实时数据流、确保系统实时性和效率方面的独特优势,并讨论了其在物联网、金融、工业自动化等领域的应用前景,以及未来技术发展趋势。
404 9
|
11月前
|
机器学习/深度学习 分布式计算 供应链
阿里云先知安全沙龙(上海站) ——大模型基础设施安全攻防
大模型基础设施的安全攻防体系涵盖恶意输入防御和基础设施安全,包括框架、三方库、插件、平台、模型和系统安全。关键漏洞如CVE-2023-6019(Ray框架命令注入)、CVE-2024-5480(PyTorch分布式RPC)及llama.cpp中的多个漏洞,强调了代码安全性的重要性。模型文件安全方面,需防范pickle反序列化等风险,建议使用Safetensors格式。相关实践包括构建供应链漏洞库、智能化漏洞分析和深度检测,确保全方位防护。
|
12月前
|
人工智能 程序员 Python
大会日程公布|PyCon China 2024 周末上海见!
大会日程公布|PyCon China 2024 周末上海见!
|
网络安全 云计算
在哪找出来阿里云服务器代码
本文介绍了在阿里云上查找服务器代码的方法,包括通过控制台搜索实例并进入详情页查找相关信息,利用 `ssh` 和 `cat` 等命令行工具远程访问和查看文件,以及联系阿里云技术支持获得进一步帮助,助您轻松定位和操作服务器代码。
298 2
|
运维 Linux Shell
Ansible的介绍与安装
**自动化与Linux系统管理**\n\n学习自动化运维能减少手动任务的错误和遗漏,提高效率。Ansible是一款Python开发的自动化工具,支持多平台,实现批量配置、部署和命令执行。它是无代理的,通过SSH连接管理主机,无需在远程主机安装额外软件。\n\nAnsible具有跨平台、人类可读的自动化语言、描述应用状态、易版本控制、动态清单管理和与其他系统集成等优点。\n\nAnsible的工作流程包括ad-hoc和playbook模式。安装涉及配置YUM源、EPEL源,然后通过yum或dnf安装软件包。在无网络环境下,可以下载rpm包离线安装。
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第27天】在智能运维中,Prometheus和Grafana的组合已成为监控和告警体系的事实标准。Prometheus负责数据收集和存储,支持灵活的查询语言PromQL;Grafana提供数据的可视化展示和告警功能。本文介绍如何配置Prometheus监控目标、Grafana数据源及告警规则,帮助运维团队实时监控系统状态,确保稳定性和可靠性。
1025 0
|
安全 机器人 程序员
Windows 计划任务每天隔 3 小时运行一次批处理文件详细配置步骤
Windows 计划任务每天隔 3 小时运行一次批处理文件详细配置步骤
1994 2