博客
关于我
CCF 201909-2 小明种苹果(续)满分代码
阅读量:307 次
发布时间:2019-03-03

本文共 1726 字,大约阅读时间需要 5 分钟。

小明种苹果(续)

问题描述

小明种苹果的任务再次被赋予任务,需要根据给定的苹果种植数据,计算出总的苹果数量、破损数量以及异常点数量。通过分析输入数据和代码逻辑,我们可以一步步完成这一任务。

输入数据

输入数据分为两行,第一行为44 74 -7 -12 -55 73 -8 -6 59 -45 76 -5 -10 60 -25 80 -6 -15 59 0,第二行为54 10 0 9 04 10 -2 7 02 10 04 10 -3 5 04 10 -1 8 0。

这些数据可能表示苹果种植的不同分段,每个分段的苹果数量以及破损情况。

解题思路

  • 读取输入数据:首先读取第一行的n值,确定分段数量。
  • 初始化变量:创建一个记录破损情况的数组drop,以及一个存储每段苹果数量的数组b。
  • 遍历每一段:对于每一段,读取t值后,处理b数组中的每个元素。
  • 计算当前段苹果数:如果当前段是第一段,直接将a设置为b[0]。对于后续段,检查是否有破损情况。如果当前段破损,记录并更新a为当前段的苹果数;否则,累加当前段的苹果数。
  • 更新总苹果数:将当前段的苹果数加到总苹果数s中。
  • 计算破损数:如果当前段破损,增加破损数D。
  • 处理异常点:根据相邻段的破损情况,计算异常点数量E。
  • 输出结果:最后输出总苹果数、破损数以及异常点数量。
  • 代码实现

    #include 
    using namespace std;const int N = 1000;int main() { int n, t, s = 0, a, D = 0, E = 0; cin >> n; int drop[N] = {0}; int b[N + 2]; for (int j = 1; j <= n; ++j) { cin >> t; for (int i = 0; i < t; ++i) { cin >> b[i]; if (i == 0) { a = b[0]; } else if (b[i] > 0) { if (a > b[i]) { drop[j] = 1; a = b[i]; } else { a += b[i]; } } s += a; } if (drop[j]) { D++; } for (int j = 1; j <= n; ++j) { if (j == 1 && drop[n] && drop[1] && drop[2]) { E++; } else if (j == n && drop[j - 1] && drop[j] && drop[1]) { E++; } else if (j != 1 && j != n && drop[j - 1] && drop[j] && drop[j + 1]) { E++; } } } cout << s << " " << D << " " << E << endl; return 0;}

    结果分析

    通过上述代码处理输入数据,可以得到以下结果:

    • 总苹果数(s):根据每段的苹果数量累加,得到总的苹果数量。
    • 破损数(D):记录每段破损情况,统计破损数量。
    • 异常点数量(E):根据相邻段的破损情况,判断是否存在异常点。

    通过代码的处理逻辑,可以清晰地看到如何从输入数据中提取有用信息,并根据给定的规则计算出所需的结果。

    转载地址:http://oepm.baihongyu.com/

    你可能感兴趣的文章
    python3 模板库_Python3 标准库概览_Python教程_我爱模板网 - 提供下载各种免费建站资源,免费网站模板,免费网页特效,让你爱上建站!...
    查看>>
    Python3 求最大/小值及索引值 Numpy
    查看>>
    python3+django使用celery执行某些任务失败的解决方案
    查看>>
    Python3+Requests+Unittest实战系列【一】
    查看>>
    python3+requests+unittest实战系列【一】
    查看>>
    python3+requests+unittest实战系列【二】
    查看>>
    Python3+Requests+Unittest实战系列【二】
    查看>>
    python3----ASCII
    查看>>
    Python3-selenium自动化测试框架,结合HTMLTestRunner测试报告!
    查看>>
    Python3-如何自我更新作为服务运行的应用程序
    查看>>
    Python3.1-网格模拟概念性问题
    查看>>
    Python3.12 解决conda环境libstdc++版本过低问题
    查看>>
    python3.2批量查询IP地址区域
    查看>>
    Python3.5中协程和未来/任务之间的区别?
    查看>>
    python3.5实现socket通讯(TCP)
    查看>>
    python3.6 ubuntu部署nginx、 uwsgi、 django
    查看>>
    Python3.6.3中,functools似乎不能用
    查看>>
    python3.6.5+cuda9+cudnn7.1+win10+tensorflow-gpu1.9.0下载配置
    查看>>
    python3.6使用pickle序列化class
    查看>>
    python3.6入门到高阶(全栈) day027 网络通信协议 osi七层模型
    查看>>