文章

【GESP】C++一级练习 bcqm-3153, 订餐时间

GESP一级综合基础练习,适合编程启蒙,难度★☆☆☆☆。

bcqm-3153

题目要求

题目描述

小明在组织高中同学的聚会。现在他要从家里面出发,按照顺序去 $n$ 家火锅店看一下哪家更适合进行大规模的聚餐。当从第 $n$ 家火锅店离开后,他会立刻决定聚餐的地点。

现在他想知道从家里出发到第 $n$ 家火锅店离开总共花了多少时间(忽略掉他在火锅店里面停留的时间)。

输入格式

第一行一个整数 $n (1≤n≤1000)$。

第二行 $n$ 个用空格分隔的整数 $a_i (1≤a_i≤103)$,其中第一个整数是小明家到第一家火锅店需要花费的时间;然后第 $i$ 个整数是第 $i−1$家火锅店到第 $i$ 家火锅店需要花的时间。

输入的所有数都是正整数且满足 $x≤n$。

输出格式

一个整数,表示最后总共花了多少时间。

样例输入 #1

1
2
4
1 2 3 4

样例输出 #1

1
10

题目分析

这是一个简单的累加题目。小明需要从家里出发,依次去 $n$ 家火锅店,最后在第 $n$ 家火锅店结束。

具体分析如下:

  1. 输入火锅店数量 $n$
  2. 输入 $n$ 个整数 $a_i$,其中:
    • $a_1$ 表示从家到第1家店的时间
    • $a_i$ 表示从第 $i-1$ 家店到第 $i$ 家店的时间
  3. 将所有时间累加即可得到总时间

例如样例中:

  • 从家到第1家店:1分钟
  • 从第1家到第2家:2分钟
  • 从第2家到第3家:3分钟
  • 从第3家到第4家:4分钟

总时间 = 1 + 2 + 3 + 4 = 10分钟

示例代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
int main() {
    // 输入火锅店的数量n
    int a;
    cin >> a;
    // 用于存储每段路程的时间
    int d;
    // 总时间
    int ans = 0;
    // 循环n次,累加每段路程的时间
    for (int i = 1; i <= a; i++) {
        cin >> d;
        ans += d;
    }
    // 输出总时间
    cout << ans;
    return 0;
}

所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code

GESP各级别考纲要点、知识拓展和练习题目清单详见C++学习项目主页

luogu-”系列题目已加入洛谷Java、C++初学团队作业清单,可在线评测,团队名额有限,欢迎加入。

bcqm-”系列题目可在编程启蒙题库进行在线评测。

本文由作者按照 CC BY 4.0 进行授权