CF895E.Eyes Closed

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Vasya and Petya were tired of studying so they decided to play a game. Before the game begins Vasya looks at array aa consisting of nn integers. As soon as he remembers all elements of aa the game begins. Vasya closes his eyes and Petya does qq actions of one of two types:

1)1) Petya says 4 integers l1,r1,l2,r2l1,r1,l2,r2 — boundaries of two non-intersecting segments. After that he swaps one random element from the [l1,r1][l1,r1] segment with another random element from the [l2,r2][l2,r2] segment.

2)2) Petya asks Vasya the sum of the elements of aa in the [l,r][l,r] segment.

Vasya is a mathematician so he answers Petya the mathematical expectation of the sum of the elements in the segment.

Your task is to write a program which will answer the second type questions as Vasya would do it. In other words your program should print the mathematical expectation of the sum of the elements of aa in the [l,r][l,r] segment for every second type query.

输入格式

The first line contains two integers n,qn,q ( 2<=n<=105,1<=q<=1052<=n<=10^{5},1<=q<=10^{5} ) — the number of elements in the array and the number of queries you need to handle.

The second line contains nn integers aia_{i} ( 1<=ai<=1091<=a_{i}<=10^{9} ) — elements of the array.

The next qq lines contain Petya's actions of type 1 or 2.

If it is a type 11 action then the line contains 55 integers 1,l1,r1,l2,r21,l1,r1,l2,r2 ( 1<=l1<=r1<=n,1<=l2<=r2<=n1<=l1<=r1<=n,1<=l2<=r2<=n ).

If it is a type 22 query then the line contains 33 integers 2,l,r2,l,r ( 1<=l<=r<=n1<=l<=r<=n ).

It is guaranteed that there is at least one type 22 query and segments [l1,r1],[l2,r2][l1,r1],[l2,r2] don't have common elements.

输出格式

For each type 22 query print one real number — the mathematical expectation of the sum of elements in the segment.

Your answer will be considered correct if its absolute or relative error doesn't exceed 10410^{-4} — formally, the answer is correct if where xx is jury's answer and yy is yours.

输入输出样例

  • 输入#1

    4 4
    1 1 2 2
    1 2 2 3 3
    2 1 2
    1 1 2 3 4
    2 1 2
    

    输出#1

    3.0000000
    3.0000000
    
  • 输入#2

    10 5
    1 1 1 1 1 2 2 2 2 2
    1 1 5 6 10
    2 1 5
    1 1 5 6 10
    1 1 5 6 10
    2 6 10
    

    输出#2

    6.0000000
    8.0400000
    
  • 输入#3

    10 10
    1 2 3 4 5 6 7 8 9 10
    1 1 5 6 10
    1 1 5 6 10
    2 1 5
    1 1 3 6 9
    2 1 3
    1 5 7 8 10
    1 1 1 10 10
    2 1 5
    2 7 10
    2 1 10
    

    输出#3

    23.0000000
    14.0000000
    28.0133333
    21.5733333
    55.0000000
    
首页