社区讨论

求助

学术版参与者 1已保存回复 3

讨论操作

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

当前回复
3 条
当前快照
1 份
快照标识符
@mi7x8lnh
此快照首次捕获于
2025/11/21 05:06
4 个月前
此快照最后确认于
2025/11/21 05:06
4 个月前
查看原帖
小球下落(FALL) 提交文件名:FALL.PAS 问题描述: 这是一个基于如下图装置的游戏。
装置包括一组水平放置的,高度不同的,长度不同的平板。地板被视为高度最低的平板。 在0时刻,从一个给定的位置,一个小球自由落下。小球以一个固定的每秒1米的速度下落。当小球到达某一平板后,它可以根据游戏者的选择,以同样的速度(每秒1米)滚向左端或右端。当它到达平板的边缘时,它继续垂直下落。小球不允许一次(在两块平板之间)下落超过MAX米。   编写一个程序找出一个小球在平板上滚动的方法,使得不中断的尽快的到达地面。 输入文件(FALL.IN): 输入文件的第一行有四个整型数: N,X,Y,MAX,其中N(1≤N≤20)为平板的数目,小球起始位置的X,Y坐标(0≤X,Y≤1000),最大允许下落的距离MAX 。以下N行,每行为X1i,X2i,Hi 三个整数,表示第i个平板被放置在Hi 高度,水平位于X1i 与X2i 。 注意: · 小球的直径和平板的厚度忽略不计。如果小球恰好落到平板的边缘则被认为一次下落到该平板; · 任意两块平板不存在公共点; · 测试数据总存在解; · 所有给定的尺寸均为米; 输出文件(FALL.OUT): 第一行为一个整数,小球到达地面的时间。 接下来每行为:P,T,D 三个整数,表示在T时刻,小球撞及平板P,并且向方向D滚动 (0表示左,1表示右)。 不包含撞及地面的情况,并且必须按小球撞及平板的时间递增顺序输出。可能有多解,只要求出一种解。 输入输出样例: FALL.IN 3 8 17 20 0 10 8 0 10 13 4 14 3
FALL.OUT 23 2 4 1 1 11 1 3 16 1

回复

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

正在加载回复...