注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号 
x
本帖最后由 rainbow18 于 2025-9-9 16:15 编辑
Problem: Balloon Festival Simulation
You are tasked with implementing a simulation system for a hot air balloon festival. The system must track multiple balloons, their altitudes, stability, and the effect of varying wind speeds over time.Core Rules:- You are given a list of balloon names at initialization.
- Only these balloons may participate in the simulation.
- Any action involving an unknown balloon name should fail.
- Balloons are stable by default when they first ascend.
- A balloon becomes unstable if the total wind speed at its altitude exceeds 15 m/s.
- Once unstable, a balloon regains stability only if:
- It remains at the same altitude, and
- The total wind speed stays strictly ≤ 15 m/s for 300 continuous seconds.
- Wind is defined at center altitudes with a specific speed.
- The effect of wind at a balloon’s altitude h is calculated by:
$$
W(h) = \frac{W_{center}}{1 + \left(\frac{h - centerAltitude}{100}\right)^2}
$$- The total wind speed is the sum of contributions from all active wind centers.
| Operation | Description
| balloon\_ascended(timestamp, name, altitude) | The balloon ascends to the specified altitude. Stable by default, then immediately checked for wind instability. Returns True
if successful, False
if timestamp is invalid or balloon is unknown. |
| balloon\_descended(timestamp, name) | The balloon descends to the ground. Stability resets to default. Returns False
if the balloon was not flying or timestamp is invalid.
| set\_wind\_speed(timestamp, centerAltitude, windSpeed) | Sets or updates a wind center at a given altitude. This overwrites any previous wind speed at that center. After updating, all balloons are re-evaluated for stability.
| inspect\_balloons(timestamp) | Returns the names of all stable balloons at the highest stable altitude (ties allowed). If no stable balloons are flying, return an empty list. - All operations have strictly increasing timestamps.
- If an operation has a timestamp <=
the previous timestamp, it must return False (or an empty list for inspect_balloons).
- Output Requirements: inspect_balloons must list balloon names in the same order they were provided during initialization.
求加米!!!
|