比赛场次 | 541 |
---|---|
比赛名称 | 4043级NOIP2022欢乐赛9th |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2022-11-25 07:40:00 |
结束时间 | 2022-11-25 11:40:00 |
开放分组 | 全部用户 |
注释介绍 | 4213 |
题目名称 | Visits |
---|---|
输入输出 | prob1_silver_22open.in/out |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试点数 | 11 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|---|---|---|---|
|
AAAAAAAAAAA | 0.164 s | 0.00 MiB | 100 |
|
AAAAAAAAAAA | 0.728 s | 0.00 MiB | 100 |
|
AAAAAAAAAAA | 2.263 s | 0.00 MiB | 100 |
Bessie 的 N(2≤N≤10^5) 个奶牛伙伴(编号为 1…N)每一个都拥有自己的农场。对于每个 1≤i≤N,伙伴 i 想要访问伙伴 a_i(ai≠i)。
给定 1…N 的一个排列 (p1,p2,…,pN),访问按以下方式发生。
对于 1 到 N 的每一个 i:
对于所有可能的排列 p,计算所有访问结束后可能得到的最大哞叫次数。
输入的第一行包含 N。
对于每一个 1≤i≤N,第 i+1 行包含两个空格分隔的整数 a_i 和 v_i。
输出一个整数,为所求的答案。
注意这个问题涉及到的整数可能需要使用 64 位整数型(例如,C/C++ 中的 "long long")。
4 2 10 3 20 4 30 1 40
90
如果 p=(1,4,3,2),则
伙伴 1 访问伙伴 2 的农场,产生 10次哞叫。
伙伴 4 看到伙伴 1 已经离开了农场,所以无事发生。
伙伴 3 访问伙伴 4 的农场,又产生 30 次哞叫。
伙伴 2 看到伙伴 3 已经离开了农场,所以无事发生。
这样总计得到了 10+30=40 次哞叫。
另一方面,如果 p=(2,3,4,1),则
伙伴 2 访问伙伴 3 的农场,产生 20 次哞叫。
伙伴 3 访问伙伴 4 的农场,产生 30 次哞叫。
伙伴 4 访问伙伴 1 的农场,产生 40 次哞叫。
伙伴 1 看到伙伴 2 已经离开了农场,所以无事发生。
这样总计得到了 20+30+40=90 次哞叫。可以证明这是所有可能的排列 p 中访问结束后得到的最大可能的哞叫次数。
点击下载样例2
测试点 2-3 对于所有的 i≠j 满足 a_i≠a_j。
测试点 4-7 满足 N≤10^3。
测试点 8-11 没有额外限制。