社区讨论

帮忙看一下此题

灌水区参与者 4已保存回复 6

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
6 条
当前快照
1 份
快照标识符
@mi7w4w4s
此快照首次捕获于
2025/11/21 04:35
4 个月前
此快照最后确认于
2025/11/21 04:35
4 个月前
查看原帖
CPP
农夫约翰的三头奶牛,贝西,艾尔西和米尔德里德,总是徘徊在农场的远处!他需要你的帮助将他们放回原处。
农场中的主要田地很长而且很瘦 - 我们可以把它想象成一条数字线,牛可以占据任何整数位置。3头奶牛目前位于不同的整数位置,而Farmer John想要移动它们以便它们占据三个连续位置(例如,位置6,78)。

不幸的是,奶牛相当困倦,农夫约翰很难引起他们的注意力让它们移动。在任何时候,如果她是一个“终点”(在所有奶牛中的最小或最大位置),他只能让奶牛移动。当他移动一头母牛时,他可以指示她移动到任何未占用的整数位置,只要在这个新位置她不再是一个终点。观察到,随着时间的推移,这些类型的动作往往会使奶牛越来越近。

请确定奶牛在三个连续位置分组之前可能的最小和最大移动次数。

INPUT FORMAT(文件herding.in):
输入文件包含一行,其中包含三个以空格分隔的整数,给出了Bessie,Elsie和Mildred的位置。每个位置都是1 ... 10的九次方范围内的整数。
输出格式(文件herding.out):
第一行输出应包含Farmer John将奶牛分组在一起所需的最小移动次数。第二行输出应该包含在奶牛聚集在一起之前他可以想象的最大数量的这种移动。
样品输入:
4 7 9
样本输出:
1
2
最小移动次数为1 ---如果Farmer John将位置4中的奶牛移动到位置8,则奶牛位于连续位置7,8,9。最大移动次数为2.例如,奶牛在位置9可以移动到位置6,然后位置7处的母牛可以移动到位置5

回复

6 条回复,欢迎继续交流。

正在加载回复...