【fzyzoj1969】无敌的妹子2

2014年2月12日1,4630

Description

http://110.90.118.124/OnlineJudge/problem_show.php?id=1969
      土豪无敌有很多相机,因为需要秀相机,所以需要拍很多妹纸,现在,无敌招募了n只妹纸,从1到n编号摆在架子上。现在无敌要给妹纸穿各种衣服来增加妹纸的美丽值(由于无敌很正直,他懒得把妹纸的衣服卸下来,只会不停地给妹纸穿衣服(妹纸:热出翔)
       他经常会把某个让他很不爽的区间内的妹纸全部替换掉;或者给某个区间内的妹纸都穿上某种衣服。
有时候无敌要试下某个相机,无敌就会随手在架子上的某个区间内找到最美丽的妹纸(一般是XXX)。
       有时候会用些镜头歪斜的相机(都是小叶子给搞歪的)拍照,无敌为了防止美丽的妹纸(一般是XXX)生他的气,不敢乱拍美丽的妹纸,就只好随手在架子上的某个区间内找到最ugly的妹纸。
       当然,还有时候无敌要给小叶子炫自己的妹纸,就会随手抱出在架子上的某个区间内的妹纸,并计算她们美丽值的和。

 

Input Format

第一行输入妹纸数n和操作数m
第二行n个数,表示妹纸自身的美丽值ai(这时候还没进行操作)
接下来m行,每行有四个数或五个数,c,dir,ql,qr,(v) (表示询问时,一行只有四个数,表示修改时,一行有五个数)
第一个数c若为1,表示询问:
         表示询问时,第二个数dir若为1,表示无敌要对小叶子炫妹子,输出区间[ql,qr]内妹纸美丽值的总和
                    第二个数dir若为2,表示无敌只能用逗逼的镜头,输出区间[ql,qr]内最ugly的妹纸的美丽值
                    第二个数dir若为3,表示无敌试相机,输出区间[ql,qr]内最美丽的妹纸的美丽值
第一个数c若为2,表示修改:
          第二个数dir若为1,表示无敌要给区间[ql,qr]内的妹纸都穿上一件美丽值为v的衣服
          第二个数dir若为2,表示无敌要把区间[ql,qr]内的妹纸全部替换成美丽值为v的妹纸

 

Output Format

对于每个询问,输出一行对应的信息

 

Sample Input

Sample Output

Hint

n<=1000000,m<=100000

0<=v,ai<=10000

代码