腾讯2016招聘笔试:微信红包

21

腾讯2016招聘笔试:微信红包

题目描述:

在春节期间,小明收到了很多个微信红包。他非常开心,也想知道自己收到了多少个红包,以及红包的最大金额和最小金额是多少。

我们可以将这个问题抽象为一个算法问题。给定一个红包列表,红包列表中的每个红包都有一个金额。我们需要编写一个程序来计算红包的总个数、最大金额和最小金额。

首先,我们需要定义红包类。红包类包含一个金额属性,用来存储红包的金额。

```javaclass RedPacket {

private double amount; // 红包金额 public RedPacket(double amount) {

this.amount = amount;

}

public double getAmount() {

return amount;

}

}

```

接下来,我们可以使用一个列表来存储收到的红包。列表的每个元素都是一个红包对象。

```javaimport java.util.ArrayList;

import java.util.List;

public class WeChatRedPacket {

public static void main(String[] args) {

// 收到的红包列表 List redPackets = new ArrayList<>();

// 添加红包 redPackets.add(new RedPacket(10.0));

redPackets.add(new RedPacket(20.0));

redPackets.add(new RedPacket(5.0));

redPackets.add(new RedPacket(15.0));

redPackets.add(new RedPacket(12.0));

// 计算红包个数 int count = redPackets.size();

// 计算最大金额和最小金额 double maxAmount = Double.MIN_VALUE;

double minAmount = Double.MAX_VALUE;

for (RedPacket redPacket : redPackets) {

double amount = redPacket.getAmount();

if (amount > maxAmount) {

maxAmount = amount;

}

if (amount < minAmount) {

minAmount = amount;

}

}

// 输出结果 System.out.println("红包个数:" + count);

System.out.println("最大金额:" + maxAmount);

System.out.println("最小金额:" + minAmount);

}

}

```

以上程序中,我们创建了一个红包列表,其中包含了5个红包。然后,我们使用循环遍历计算了红包的总个数、最大金额和最小金额。

最后,我们将计算结果输出到控制台。运行程序,可以得到如下输出:

```

红包个数:5最大金额:20.0最小金额:5.0```

通过以上程序,我们成功地计算出了红包个数、最大金额和最小金额。

这道题目要求我们对收到的红包进行统计分析,之所以选择使用列表来存储红包,是因为列表具有动态扩容的能力,可以方便地添加和删除红包。另外,我们使用循环遍历红包列表,并同时更新最大金额和最小金额。

这个程序只是一个简单的示例,实际上我们可能需要更复杂的算法来处理更大规模的数据。但是这个题目的核心思想就是使用列表来存储红包,并通过循环遍历来进行统计分析。

总结一下,这道题目要求我们编写一个程序来统计分析微信红包。我们通过定义红包类和使用列表来存储红包,然后使用循环遍历来计算红包的总个数、最大金额和最小金额。通过这个题目的练习,我们可以掌握如何使用列表和循环来处理数据。这对于我们日后解决其他类似的问题也会有很大帮助。

红包

版权声明:除非特别标注,否则均为网络文章,侵权请联系站长删除。

上一篇 用python写微信红包脚本_python 实现模拟微信发红包

下一篇 免费制作一个属于你的微信红包封面