题目名称 1817. [WC 2013] 糖果公园
输入输出 park.in/out
难度等级 ★★★★
时间限制 8500 ms (8.5 s)
内存限制 512 MiB
测试数据 10
题目来源 GravatarAsm.Def 于2015-01-28加入
开放分组 全部用户
提交状态
分类标签
莫队 三维莫队 带修莫队
分享题解
通过:81, 提交:251, 通过率:32.27%
Gravatar瑆の時間~無盡輪迴·林蔭 100 8.352 s 52.57 MiB C++
GravatarSoviets 100 9.291 s 62.12 MiB C++
Gravatar前鬼后鬼的守护 100 9.604 s 9.19 MiB C++
GravatarQwQ 100 11.666 s 17.21 MiB C++
Gravatar甘罗 100 12.222 s 55.62 MiB C++
GravatarMarvolo 100 12.252 s 55.62 MiB C++
GravatarSoviets 100 12.558 s 68.40 MiB C++
GravatarFoolMike 100 12.706 s 30.26 MiB C++
Gravatar┭┮﹏┭┮ 100 12.876 s 21.24 MiB C++
Gravatartest 100 13.165 s 11.09 MiB C++
本题关联比赛
SYOI 专题 4:分块(根号杂烩)
关于 糖果公园 的近10条评论(全部评论)
7.999s超超低空飞过
GravatarLGLJ
2019-08-28 07:36 10楼
这是我第一次写树上莫队/带修改莫队……以前听过思想之后感觉就不用写了。
一千题留念(毁了100题flag,捂脸逃
GravatarFoolMike
2018-01-15 19:38 9楼
调了这么久发现树剖写跪了qwq
身败名裂
顺便感谢sxysxy大佬的代码
我会扩栈啦!
没有他的扩栈我一辈子也调不出来qwq
GravatarCSU_Turkey
2017-10-09 21:53 8楼
变量命名为index狂C不止。。。。。。身败名裂。。。。。。
GravatarHZOI_蒟蒻一只
2017-04-27 16:31 7楼
一下午...终于调对了..
艰难:
先调样例,不带修改的部分。啊过辣。
加上修改。wawawa....
魔改后,样例AC。
本地测,wawawawawa......
剩下半个下午全都在魔改,终于过了...
果然,一个强的样例还是很重要的。。。
Gravatarsxysxy
2017-04-07 17:23 6楼
。。。常数。。。
Gravatardashgua
2016-01-06 17:35 5楼
果然是一道卡常数的好题
tat
Gravatarwrz91win
2015-10-20 20:01 4楼
好没久一A了QAQ 智神大法好233
Gravatar真呆菌
2015-03-29 17:20 3楼
做数据的人我balabala......
块的大小设为sqrt(n)一直TLE就对了
const int sizen=1500我叫雷锋
Gravatarnew ioer
2015-03-28 08:48 2楼
ydc跟我说卡常数,果然过掉了
最后一个点7.95s+ 2333333
Gravatarztx
2015-03-26 12:03 1楼

1817. [WC 2013] 糖果公园

★★★★   输入文件:park.in   输出文件:park.out   简单对比
时间限制:8.5 s   内存限制:512 MiB

【题目描述】


    Candyland 有一座糖果公园,公园里不仅有美丽的风景、好玩的游乐项目,还有许多免费糖果的发放点,这引来了许多贪吃的小朋友来糖果公园玩。

    糖果公园的结构十分奇特,它由 n 个游览点构成,每个游览点都有一个糖果发放处,我们可以依次将游览点编号为 1 至 n。有 n−1 条双向道路连接着这些游览点,并且整个糖果公园都是连通的,即从任何一个游览点出发都可以通过这些道路到达公园里的所有其它游览点。

    糖果公园所发放的糖果种类非常丰富,总共 m 种,它们的编号依次为 1 至 m。每一个糖果发放处都只发放某种特定的糖果,我们用 ci 来表示 i 号游览点的糖果。

    来到公园里游玩的游客都不喜欢走回头路,他们总是从某个特定的游览点出发前往另一个特定的游览点,并游览途中的景点,这条路线一定是唯一的。他们经过每个游览点,都可以品尝到一颗对应种类的糖果。

    大家对不同类型的糖果的喜爱程度都不尽相同。根据游客们的反馈打分,我们得到了糖果的美味指数,第 i 种糖果的美味指数为 vi。另外,如果一位游客反复地品尝同一种类的糖果,他肯定会觉得有一些腻。根据量化统计,我们得到了游客第 i 次品尝某类糖果的新奇指数 wi,如果一位游客第 i 次品尝第 j 种糖果,那么他的愉悦指数 H 将会增加对应的美味指数与新奇指数的乘积,即 $v_j w_i$。这位游客游览公园的愉悦指数最终将是这些乘积的和。

    当然,公园中每个糖果发放点所发放的糖果种类不一定是一成不变的。有时,一些糖果点所发放的糖果种类可能会更改(也只会是 m 种中的一种),这样的目的是能够让游客们总是感受到惊喜。

    糖果公园的工作人员小 A 接到了一个任务,那就是根据公园最近的数据统计出每位游客游玩公园的愉悦指数。但数学不好的小 A 一看到密密麻麻的数字就觉得头晕,作为小 A 最好的朋友,你决定帮他一把。


【输入格式


    第一行包含三个正整数 n,m,q,分别表示游览点个数、糖果种类数和操作次数。

    第二行包含 m 个正整数 v1,v2,…,vm。

    第三行包含 n 个正整数 w1,w2,…,wn。

    第四行到第 n+2 行,每行包含两个正整数 ai,bi,表示这两个游览点之间有路径可以直接到达。

    第 n+3 行包含 n 个正整数 c1,c2,…,cn。

    接下来 q 行,每行包含三个整数 t,x,y,表示一次操作:

    若 t 为 0,则 1≤x≤n,1≤y≤m,表示编号为 x 的游览点发放的糖果类型改为 y;

    若 t 为 1,则 1≤x,y≤n,表示对出发点为 x,终止点为 y 的路线询问愉悦指数。


【输出格式


    按照输入的先后顺序,对于每个 t 为 1 的操作输出一行,用一个正整数表示答案。


【样例输入】

4 3 5
1 9 2
7 6 5 1
2 3
3 1
3 4
1 2 3 2
1 1 2
1 4 2
0 2 1
1 1 2
1 4 2

【样例输出】

84
131
27
84

【数据范围】

    对于所有的数据,1≤vi,wi≤10^6,1≤ai,bi≤n,1≤ci≤m,w1,w2,…,wn 是非递增序列,即对任意 1<i≤n,满足 wi≤wi−1。