#P1964. 2024.8.30-KDXF-第2题-数组取数

2024.8.30-KDXF-第2题-数组取数

题目内容

一个长度为nn的数组A1,A2,...,AnA_1,A_2,...,A_n,其中Ai=iA_i= iqq次操作,每次选择区间[l,r][l,r]将下标从l rl~r的数全部取出,

按原顺序放置到数列末尾,数组变成

$A_1,A_2,...,A_{l-1},A_{l+1},A_{r+2},...,A_n,A_l,A_{i+1},...,A_r$

例如,[1,2,3,4,5,6][1,2,3,4,5,6]11次选择操作[2,4][2,4],变化后数列变为[1,5,6,2,3,4][1,5,6,2,3,4],第22次选择操作[3,5][3,5],数列变为[1,5,4,6,2,3][1,5,4,6,2,3]。请输出qq次操作过程中,数字ii出现过的下标位置的个数。

输入描述

第一行包含两个整数nn qq (1n,q3×103)(1≤n,q≤3\times 10^3),表示数列的长度和操作次数。

接下来qq行,每行包含两个整数l,r(1lrn)l,r(1≤l≤r≤n),表示qq次操作。

输出描述

输出一行包含nn个整数,第i个数表示数字i出现过的下标位置的个数。

补充说明

注意:python请选择编译器pypy3提交,否则可能运行超时!!!

示例1

输入

6 2
1 3
2 4

输出

3 2 2 2 3 3

说明

[1,2,3,4,5,6][1,2,3,4,5,6],第11次选择操作[1,3][1,3],变化后数列变为[4,5,6,1,2,3][4,5,6,1,2,3],第22次选择操作[2,4][2,4],数列变为 [4.2,3,5,6,1][4.2,3,5,6,1]。 数字11操作过程中出现的下标分别为[1,4,6][1,4,6],共33个。 数字22操作过程中出现的下标分别[2,5,2][2,5,2],共22个。 数字33操作过程中出现的下标分别[3,6,3][3,6,3],共22个。 数字44操作过程中出现的下标分别[4,1,1][4,1,1],共22个。 数字55操作过程中出现的下标分别[5,2,4][5,2,4],共33个。 数字66操作过程中出现的下标分别[6,3,5][6,3,5],共33个。

示例2

输入

20 6
1 5
8 12
6 18
3 9
5 5
13 20

输出

6 6 6 6 6 2 2 4 4 4 5 5 6 6 6 5 5 5 5 5