博客
关于我
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/

    你可能感兴趣的文章
    PHP二维数组重组
    查看>>
    PHP交换两个变量值
    查看>>
    php代码执行完整流程介绍
    查看>>
    PHP代码格式化工具phpcf常见问题解决方案
    查看>>
    PHP使用3DES算法加密解密字符串
    查看>>
    PHP使用curl multi要注意的问题:每次使用curl multi同时并发多少请求合适
    查看>>
    php使用memcached扩展的一个BUG
    查看>>
    PHP内核介绍及扩展开发指南—基础知识
    查看>>
    PHP写日志fwrite和file_put_contents的区别与性能
    查看>>
    PHP函数
    查看>>
    PHP函数__autoload失效原因(与smarty有关)
    查看>>
    PHP函数操作数字和汉字互转(100以内)
    查看>>
    PHP函数方法
    查看>>
    PHP删除指定目录下的所有文件和文件夹 | 删除指定文件
    查看>>
    php判断ip黑名单程序代码
    查看>>
    php判断复选框是否被选中的方法
    查看>>
    PHP判断指定目录下是否存在文件
    查看>>
    php判断数组是否为空
    查看>>
    PHP判断数组是否有重复值、获取重复值
    查看>>
    PHP利用正则表达式实现手机号码中间4位用星号(*)替换显示
    查看>>