首页 > 试题广场 >

食材解析系统2

[编程题]食材解析系统2
  • 热度指数:51 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
根据给定的物品描述文本,按照以下规则提取信息并输出JSON。假设当前日期为2024-06-01。
1.zone格式为`分区`,分区规则:
  • 若描述中包含“冻”、“冰”、“硬”等字,则分区为`FROZ`;
  • 若不包含上述字但包含“鲜”、“肉”、“奶”、“剩”等字,则分区为`COOL`;
  • 其他情况分区为`PANT`。注意“冻”字优先级最高。
2.数量计算规则:
  • 若描述中提到“半瓶”或“一半”,则数量乘以0.5;
  • 提到“大半”则乘以0.8;提到“一点儿”则乘以0.1;
  • 若未提及具体数量则填-1.0。
3.单位规则:
  • 液体类物品(如水、奶、油)单位必须为`LIQUID_ML`,若描述中使用重量单位(如“斤”),按1斤=500ml转换;
  • 固体类物品(如肉、米)单位必须为`SOLID_G`;
  • 若描述中出现单位与物品类型不匹配(如用体积单位描述固体),则单位设为`SOLID_G`但数量改为-1.0,并标记data_warning为true。
4.保质期计算:
  • 若直接给出过期日期则使用;
  • 若给出剩余天数则从2024-06-01起算;
  • 若给出相对购买时间(如“昨天买的”),则先计算购买日期,然后根据分区加固定天数:`COOL`区加5天,`FROZ`区加90天,`PANT`区加365天。

输入描述:
一段用户描述。


输出描述:
{
  "zone": "",  //分区
  "net_qty": null, //数量
  "unit": "LIQUID_ML/SOLID_G/COUNT", //单位
  "expiry": "YYYY-MM-DD", //保质期
  "data_warning": false //是否匹配
}
示例1

输入

这有一桶 5L 的大米。

输出

{
"zone": "PANT",
"net_qty": -1.0,
"unit": "SOLID_G",
"expiry": "2025-06-01",
"data_warning": true
}

备注:
提示词学习 提示词工程指南

这道题你会答吗?花几分钟告诉大家答案吧!