#PRODPR001. PROD-PR-001 实操一 渠道转化指标
PROD-PR-001 实操一 渠道转化指标
PROD-PR-001 · 数据产品开发技术人员 · 专项 · 满分 25 分 · 基础与进阶
可提交 C、C++、Java、Python 3 和 Node.js。评测机没有安装 Kotlin、PyPy,也没有支持大整数的 GNU awk,因此不开放 Kotlin、PyPy 和 Bash。
业务与规则
1. 输入day为统计日序号,不是日期字符串;区间[start,end]含两端。所有渠道均输出,包括无事件渠道。
2. 按渠道独立计算:VISIT用户去重数、PAY用户去重数、PAY金额之和。每条PAY事件代表一笔独立支付,没有重复事件;同用户可有多笔支付。
3. 输入保证各渠道区间内的PAY用户均在该渠道该区间有VISIT事件,因此支付人数≤访问人数。
4. 转化率=支付人数/访问人数;访问人数为0时取0。金额按整数分输出,不将不同渠道用户做全站去重。
输入
第一行k n start end;随后k行渠道名称;随后n行day channel user event amount。event为VISIT或PAY,VISIT金额=0,PAY金额≥0。
输出
按渠道字典升序,每行:channel visit_users pay_users amount_sum conversion_rate;转化率保留6位小数。
范围
1≤k≤100;0≤n≤100000;1≤start≤end≤365;day∈[1,365];amount≤1e12分。建议2秒、256MB,按语言校准。转化率容许1e-6误差,其余字段精确匹配。
样例输入
2 6 1 2
WEB
APP
1 WEB U1 VISIT 0
1 WEB U1 VISIT 0
2 WEB U1 PAY 100
2 WEB U2 VISIT 0
2 WEB U1 PAY 50
3 APP U3 VISIT 0
样例输出
APP 0 0 0 0.000000
WEB 2 1 150 0.500000
附件中的 sample.in、sample.out 与上面样例一致,不计入 25 分。计分点见测试配置,按点给分。
整数和文本按空白分隔后的 token 精确比较;小数允许绝对误差或相对误差 1e-6。时限 2 秒、内存 256MB;Java、Python 3 和 Node.js 时限按 2 倍,Java 内存按 2 倍。
题族:PROD-PR-001。状态:公开样题。组卷:否。公开:是。