中级
验证上报时间戳合法性(时钟漂移)
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
import pandas as pd, json
payloads_csv = open_url(____).read()
payloads = pd.read_csv(StringIO(____))
MAX_DRIFT = ____
def check_clock_drift(____):
try: p = json.loads(____)
except: return False, '____', ____
ts = p.get('____', p.get(____))
if ts is None: return False, '____', ____
drift = abs(float(____) - float(____))
if drift > MAX_DRIFT: return False, '____', drift
return True, '____', drift
for _, row in payloads.head(____).iterrows():
ok, reason, drift = check_clock_drift(____)
status = "____" + str(round(____)) + "____" if ok else "____" + reason + "____" + str(round(____)) + "____"
print("____" + str(____) + "____" + row['____'] + "____" + status)
示例
输入
solve()
期望输出
id=1 RPI-001: OK drift=0.1s id=2 ARD-001: OK drift=0.2s id=3 ESP-001: REJECT(invalid_json drift=0s) id=4 GW-001: REJECT(missing_timestamp drift=0s) id=5 ESP-001: REJECT(invalid_json drift=0s) id=6 RPI-002: REJECT(missing_timestamp drift=0s) id=7 ARD-002: OK drift=0.0s id=8 RPI-001: OK drift=20.0s id=9 ARD-999: OK drift=0.0s id=10 ARD-001: OK drift=0.0s id=11 ARD-002: OK drift=0.0s id=12 RPI-003: OK drift=0.0s
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199