rust自动奔跑代码(rust自动奔跑)

时间:2023-09-27 04:46:08 来源:用户分享 编辑:心软是病

第一章 一直奔跑

If I rest, I rust

踏上这条升本的路才知道多艰辛,早早就过上了两点一线的生活——教室,家。

每天忙到无暇顾及午饭吃什么,不在在乎每天是否要早起化个妆,挑一件心仪的衣服再去上课。仿佛一切与学习无关的都顺其自然,有什么吃什么,哪件衣服干了穿哪件…每天好像都很忙,但是总结下来也没做多少事情,但是不能松懈,一有时间就拿起书,看一个单词记住了也是好的,这就是自己选择的路,要为自己的选择负责,那么爬也要爬到终点不是吗?

我知道这条路不好走,但是我从来没想过原来通向成功的路真的很难走,没有捷径,只能一步一个脚印,慢慢走…听说的难跟实践的难也是很不一样的,一路奔跑仿佛是这条路上最好走的捷径。

历时36天的暑假课结束了,但是不意味着暂停跑步或者开始散步,升本漫长的路才刚刚开始,我们各自努力,最高处见。

【Rust 和Python】编程实战:约翰尼在进步吗?

为了训练即将到来的马拉松比赛,约翰尼每个星期六进行一次长跑。他想要追踪他这个星期六跑的英里数超过上个星期六跑的英里数的频率。这被称为一个进步的天数。

创建一个函数,该函数接收每个星期六跑的英里数的数组,并返回约翰尼的进步天数的总数。

例子progressDays([3, 4, 1, 2]) ➞ 2// 有两个进步的天数,(3->4)和(1->2)

progressDays([10, 11, 12, 9, 10]) ➞ 3

progressDays([6, 5, 4, 3, 2, 9]) ➞ 1

progressDays([9, 9]) ➞ 0

首先,我们需要在Rust和Python中分别定义这个问题。这个问题看起来像是一个简单的计数问题,我们要统计一个序列中增加的天数数量。

对于Rust,这是一个相对直接的解决方案:

fn progress_days(mileage: Vec<i32>) -> i32 { mileage.iter().enumerate().filter(|&(_, m)| m > mileage.get(i - 1).unwrap_or(&0))unt() }

在上述代码中,我们首先使用 Vec<i32> 来存储每周的里程。然后我们使用 enumerate 函数给每个元素一个索引并获取它的值。filter 函数则用来过滤出增加的里程(即当前里程大于前一次的里程)。count 函数则用来统计满足条件的元素数量,也就是增加的天数数量。

对于Python,这个问题的解决方案稍微复杂一些,因为我们不能直接获取列表中的前一个元素:

def progress_days(mileage): count = 0 for i in range(1, len(mileage)): if mileage[i] > mileage[i - 1]: count += 1 return count

在上述代码中,我们创建了一个 count 变量用来计算增加的天数数量。然后我们遍历 mileage 列表中的每个元素,并检查当前元素是否大于前一个元素。如果是,我们就增加 count 的值。最后,我们返回 count。

声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送至邮件举报,一经查实,本站将立刻删除。转载务必注明出处:http://www.hixs.net/article/20230927/169494800420206.html