【2025刷题笔记】- 单词重量

刷题笔记合集🔗

单词重量

问题描述

每个句子由多个单词组成,句子中的每个单词的长度都可能不一样,我们假设每个单词的长度 为该单词的重量,你需要做的就是给出整个句子的平均重量

输入格式

输入一行,包含一个英文句子,单词之间用空格分隔。

输出格式

输出一个浮点数,表示整个句子的平均重量,保留两位小数。

样例输入

Who Love Solo

样例输出

3.67

数据范围

样例 解释说明
样例1 "Who"长度为3,"Love"长度为4,"Solo"长度为4,平均重量为(3+4+4)/3=3.67
  • 输入的句子中单词数量不超过
  • 每个单词的长度不超过
  • 句子中只包含英文字母和空格

题解

这道题目要求我们计算所有单词的平均长度,并保留两位小数。解题思路其实很直观:

  1. 将输入的句子按空格分割成单词数组
  2. 计算每个单词的长度(即重量)
  3. 求出所有单词长度的总和
  4. 用总和除以单词数量,得到平均重量
  5. 将结果格式化为保留两位小数的形式

关键点在于如何处理保留两位小数的问题。在不同的编程语言中有不同的实现方法:

  • Python中可以使用round()函数或者格式化字符串
  • Java中可以使用String.format()DecimalFormat
  • C++中可以使用cout的格式控制或printf
  • JavaScript中可以使用toFixed()方法

时间复杂度为O(n),其中n是句子中的字符总数。我们只需要遍历一次字符串来计算结果,所以效率很高。对于题目给定的数据范围(句子不超过100个单词,每个单词长度不超过20),这种算法足够高效。

参考代码

  • Python
import sys
input = lambda:sys.stdin.readline().strip()

# 读取输入的句子
words = input().split()

# 计算所有单词的总长度
total_len = 0
for word i

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

算法刷题笔记 文章被收录于专栏

本专栏收集并整理了一些刷题笔记

全部评论

相关推荐

点赞 评论 收藏
分享
码农索隆:《211》《转正4k》😂,真给我整笑了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务