【CSP】202212-1_现值计算Python实现

2023-12-09 21:45

本文主要是介绍【CSP】202212-1_现值计算Python实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • @[toc]
      • 试题编号
      • 试题名称
      • 时间限制
      • 内存限制
      • 问题描述
      • 输入格式
      • 输出格式
      • 样例输入
      • 样例输出
      • 样例说明
      • 子任务
      • 评分方式
      • 提示
      • `Python`实现

试题编号

202212-1

试题名称

现值计算

时间限制

1.0s

内存限制

512.0MB

问题描述

  • 评估一个长期项目的投资收益,资金的时间价值是一个必须要考虑到的因素
  • 简单来说,假设银行的年利率为 5 % 5\% 5%,那么当前的 100 100 100元一年后就会变成 105 105 105元,两年后变成 110.25 110.25 110.25
  • 因此,现在收到 100 100 100元比两年后收到 100 100 100元收益更多,两年后再支出 100 100 100元会比立刻支出 100 100 100元更加划算
  • 基于上述分析,我们使用如下的模型来衡量时间价值:假设银行的年利率为 i i i,当前(第 0 0 0年)的 x x x元就等价于第 k k k年的 x × ( 1 + i ) k x \times (1 + i)^{k} x×(1+i)k元;相应的,第 k k k年的 x x x元的当前价值实际为 x × ( 1 + i ) − k x \times (1 + i)^{-k} x×(1+i)k
  • 现给出某项目未来 n n n年的预计收入支出情况,在将所有款项转换为当前价值后,试计算该项目的总收益

输入格式

  • 从标准输入读入数据
  • 输入的第一行包含空格分隔的一个正整数 n n n和一个实数 i i i,分别表示年数和银行年利率
  • 输入的第二行包含空格分隔的 n + 1 n + 1 n+1个整数,依次表示该项目第 0 0 0 1 1 1 ⋯ \cdots n n n年的预计收入(正数)或支出(负数)

输出格式

  • 输出到标准输出中
  • 输出一个实数,表示该项目在当前价值标准下的总盈利或亏损

样例输入

2 0.05
-200 100 100

样例输出

-14.059

样例说明

  • 该项目当前支出 200 200 200元,在接下来两年每年收入 100 100 100
  • 虽然表面看起来收支相抵,但计算当前价值可知总共亏损了约 14.059 14.059 14.059

子任务

  • 全部的测试数据满足 0 < n ≤ 50 0 < n \leq 50 0<n50 0 < i < 1 0 < i < 1 0<i<1 i i i的有效数字不多于 3 3 3位,每年预计收入(正数)或支出(负数)的绝对值不大于 1000 1000 1000

评分方式

  • 如果你输出的浮点数与参考结果相比,满足绝对误差不大于 0.1 0.1 0.1,则该测试点满分,否则不得分

提示

  • C/C++:建议使用double类型存储浮点数,并使用scanf("%lf", &x);进行输入,printf("%f", x);进行输出
  • Python:直接使用print(x)进行输出即可
  • Java:建议使用double类型存储浮点数,可以使用System.out.print(x);进行输出

Python实现

n, i = map(eval, input().split())
money = list(map(int, input().split()))res = 0for k in range(n + 1):res += money[k] / ((1 + i) ** k)print(res)

这篇关于【CSP】202212-1_现值计算Python实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/475183

相关文章

SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南

《SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南》本文将基于开源项目springboot-easyexcel-batch进行解析与扩展,手把手教大家如何在SpringBo... 目录项目结构概览核心依赖百万级导出实战场景核心代码效果百万级导入实战场景监听器和Service(核心

C# async await 异步编程实现机制详解

《C#asyncawait异步编程实现机制详解》async/await是C#5.0引入的语法糖,它基于**状态机(StateMachine)**模式实现,将异步方法转换为编译器生成的状态机类,本... 目录一、async/await 异步编程实现机制1.1 核心概念1.2 编译器转换过程1.3 关键组件解析

基于Python Playwright进行前端性能测试的脚本实现

《基于PythonPlaywright进行前端性能测试的脚本实现》在当今Web应用开发中,性能优化是提升用户体验的关键因素之一,本文将介绍如何使用Playwright构建一个自动化性能测试工具,希望... 目录引言工具概述整体架构核心实现解析1. 浏览器初始化2. 性能数据收集3. 资源分析4. 关键性能指

使用Redis快速实现共享Session登录的详细步骤

《使用Redis快速实现共享Session登录的详细步骤》在Web开发中,Session通常用于存储用户的会话信息,允许用户在多个页面之间保持登录状态,Redis是一个开源的高性能键值数据库,广泛用于... 目录前言实现原理:步骤:使用Redis实现共享Session登录1. 引入Redis依赖2. 配置R

SpringBoot实现RSA+AES自动接口解密的实战指南

《SpringBoot实现RSA+AES自动接口解密的实战指南》在当今数据泄露频发的网络环境中,接口安全已成为开发者不可忽视的核心议题,RSA+AES混合加密方案因其安全性高、性能优越而被广泛采用,本... 目录一、项目依赖与环境准备1.1 Maven依赖配置1.2 密钥生成与配置二、加密工具类实现2.1

使用Python的requests库调用API接口的详细步骤

《使用Python的requests库调用API接口的详细步骤》使用Python的requests库调用API接口是开发中最常用的方式之一,它简化了HTTP请求的处理流程,以下是详细步骤和实战示例,涵... 目录一、准备工作:安装 requests 库二、基本调用流程(以 RESTful API 为例)1.

在Java中实现线程之间的数据共享的几种方式总结

《在Java中实现线程之间的数据共享的几种方式总结》在Java中实现线程间数据共享是并发编程的核心需求,但需要谨慎处理同步问题以避免竞态条件,本文通过代码示例给大家介绍了几种主要实现方式及其最佳实践,... 目录1. 共享变量与同步机制2. 轻量级通信机制3. 线程安全容器4. 线程局部变量(ThreadL

Python清空Word段落样式的三种方法

《Python清空Word段落样式的三种方法》:本文主要介绍如何用python-docx库清空Word段落样式,提供三种方法:设置为Normal样式、清除直接格式、创建新Normal样式,注意需重... 目录方法一:直接设置段落样式为"Normal"方法二:清除所有直接格式设置方法三:创建新的Normal样

Python调用LibreOffice处理自动化文档的完整指南

《Python调用LibreOffice处理自动化文档的完整指南》在数字化转型的浪潮中,文档处理自动化已成为提升效率的关键,LibreOffice作为开源办公软件的佼佼者,其命令行功能结合Python... 目录引言一、环境搭建:三步构建自动化基石1. 安装LibreOffice与python2. 验证安装

把Python列表中的元素移动到开头的三种方法

《把Python列表中的元素移动到开头的三种方法》在Python编程中,我们经常需要对列表(list)进行操作,有时,我们希望将列表中的某个元素移动到最前面,使其成为第一项,本文给大家介绍了把Pyth... 目录一、查找删除插入法1. 找到元素的索引2. 移除元素3. 插入到列表开头二、使用列表切片(Lis