Կապակցված ցուցակից հատվածների հեռացում

Տրված է կապակցված ցուցակ (Linked List), որի վրա անհրաժեշտ է կատարել q հարցումներ (queries): Հարցումները երկու տիպի են.

  1. print - ծրագիրը պետք է տպի կապակցված ցուցակի բովանդակությունը

  2. remove l r - հեռացնել բոլոր տարրերը, սկսած l-րդից մինչև r-րդը ներառյալ:

Մուտք

Կապակցված ցուցակի նախնական տվյալները ներմուծվում են ավտոմատ կերպով, ուստի ձեր կողմից գործողություններ անհրաժեշտ չեն։ Երաշխավորված է, որ կապակցված ցուցակի չափը չի գերազանցի 1000-ը, իսկ ցուցակում եղած արժեքների բացարձակ արժեքը չի գերազանցի -ը։

Մուտքի առաջին տողում տրված է մեկ ամբողջ թիվ q (1 ≤ q ≤ 1000):

Հաջորդ q տողերում ածանցվում են հարցումները․ print — եթե ծրագիրը պետք է տպի կապակցված ցուցակի բովանդակությունը, և remove l r — եթե անհրաժեշտ է հեռացնել l-րդից մինչև r-րդ տարրերը (1 ≤ l, r ≤ |L|):

Ելք

Հարցումների արդյունքում, բոլոր print հրահանգների համար ծրագիրը պետք է ճիշտ տպի կապակցված ցուցակի արժեքները։ Արժեքները պետք է բաժանված լինեն բացատներով։

Օրինակներ

Մուտք

Ելք

10
4 8 4 0 -2 8 2 8 0 4
5
remove 1 2
print
remove 1 2
remove 3 4
print

4 0 -2 8 2 8 0 4
-2 8 0 4

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue