@@ -0,0 +1,79 @@
1+[38;2;249;38;114m#include[0m[38;2;190;132;255m [0m[38;2;230;219;116m<[0m[38;2;230;219;116mbits/stdc++.h[0m[38;2;230;219;116m>[0m[38;2;190;132;255m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m includes most of the useful libraries[0m
2+[38;2;249;38;114m#include[0m[38;2;190;132;255m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mmainwindow.h[0m[38;2;230;219;116m"[0m
4+[38;2;249;38;114musing[0m[38;2;248;248;242m [0m[38;2;249;38;114mnamespace[0m[38;2;248;248;242m std[0m[38;2;248;248;242m;[0m
6+[38;2;117;113;94m/*[0m[38;2;117;113;94m This C program was submitted to help bat[0m
7+[38;2;117;113;94m [0m[38;2;117;113;94m*[0m[38;2;117;113;94m with its syntax highlighting tests[0m
8+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
10+[3;38;2;102;217;239mbool[0m[38;2;248;248;242m [0m[38;2;166;226;46mtest_function[0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m [0m[3;38;2;253;151;31mx[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m [0m[3;38;2;253;151;31my[0m[38;2;248;248;242m)[0m
11+[38;2;248;248;242m{[0m
12+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242mx [0m[38;2;249;38;114m==[0m[38;2;248;248;242m y [0m[38;2;249;38;114m||[0m[38;2;248;248;242m x [0m[38;2;249;38;114m+[0m[38;2;248;248;242m y [0m[38;2;249;38;114m==[0m[38;2;248;248;242m x [0m[38;2;249;38;114m*[0m[38;2;248;248;242m y[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
13+[38;2;248;248;242m}[0m
15+[38;2;248;248;242mMainWindow[0m[38;2;248;248;242m::[0m[38;2;166;226;46mMainWindow[0m[38;2;248;248;242m([0m[38;2;248;248;242mQWidget [0m[38;2;249;38;114m*[0m[3;38;2;253;151;31mparent[0m[38;2;248;248;242m)[0m
16+[38;2;248;248;242m [0m[38;2;249;38;114m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mQMainWindow[0m[38;2;248;248;242m([0m[38;2;248;248;242mparent[0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;248;248;242mui[0m[38;2;248;248;242m([0m[38;2;249;38;114mnew[0m[38;2;248;248;242m Ui[0m[38;2;248;248;242m::[0m[38;2;248;248;242mMainWindow[0m[38;2;248;248;242m)[0m
17+[38;2;248;248;242m{[0m
18+[38;2;248;248;242m ui[0m[38;2;248;248;242m->[0m[38;2;248;248;242msetupUi[0m[38;2;248;248;242m([0m[38;2;255;255;255mthis[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
19+[38;2;248;248;242m [0m[38;2;248;248;242mresize[0m[38;2;248;248;242m([0m[38;2;190;132;255m560[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;190;132;255m420[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
20+[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m Image menu[0m
21+[38;2;248;248;242m [0m[38;2;248;248;242mconnect[0m[38;2;248;248;242m([0m[38;2;248;248;242mui[0m[38;2;248;248;242m->[0m[38;2;255;255;255mactionOpen[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;249;38;114m&[0m[38;2;248;248;242mQAction[0m[38;2;248;248;242m::[0m[38;2;248;248;242mtriggered[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;255;255;255mthis[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;249;38;114m&[0m[38;2;248;248;242mMainWindow[0m[38;2;248;248;242m::[0m[38;2;248;248;242mopen[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
22+[38;2;248;248;242m MainWindow[0m[38;2;248;248;242m::[0m[38;2;249;38;114m~[0m[38;2;248;248;242mMainWindow[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
23+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
24+[38;2;248;248;242m [0m[38;2;249;38;114mdelete[0m[38;2;248;248;242m ui[0m[38;2;248;248;242m;[0m
25+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
26+[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m y [0m[38;2;249;38;114m=[0m[38;2;248;248;242m ui[0m[38;2;248;248;242m->[0m[38;2;255;255;255mgraphicsView[0m[38;2;248;248;242m->[0m[38;2;248;248;242msize[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242mheight[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;248;248;242m image[0m[38;2;248;248;242m.[0m[38;2;248;248;242mheight[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
27+[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m x [0m[38;2;249;38;114m=[0m[38;2;248;248;242m ui[0m[38;2;248;248;242m->[0m[38;2;255;255;255mgraphicsView[0m[38;2;248;248;242m->[0m[38;2;248;248;242msize[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242mwidth[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;248;248;242m image[0m[38;2;248;248;242m.[0m[38;2;248;248;242mwidth[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
29+[38;2;248;248;242m [0m[3;38;2;102;217;239mvoid[0m[38;2;248;248;242m [0m[38;2;248;248;242mMainWindow[0m[38;2;248;248;242m::[0m[38;2;248;248;242mshowImage[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
30+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
31+[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m Reset scale[0m
32+[38;2;248;248;242m ui[0m[38;2;248;248;242m->[0m[38;2;255;255;255mgraphicsView[0m[38;2;248;248;242m->[0m[38;2;248;248;242mresetMatrix[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
34+[38;2;248;248;242m [0m[38;2;248;248;242mstatusBar[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m->[0m[38;2;248;248;242mshowMessage[0m[38;2;248;248;242m([0m[38;2;248;248;242mQString[0m[38;2;248;248;242m([0m[38;2;230;219;116m"[0m[38;2;230;219;116m%1 [0m[38;2;190;132;255m%2x[0m[38;2;190;132;255m%3p[0m[38;2;230;219;116mx %4 kB[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242marg[0m[38;2;248;248;242m([0m[38;2;248;248;242mfile[0m[38;2;248;248;242m.[0m[38;2;248;248;242mfileName[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242marg[0m[38;2;248;248;242m([0m[38;2;248;248;242mimage[0m[38;2;248;248;242m.[0m[38;2;248;248;242mwidth[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242marg[0m[38;2;248;248;242m([0m[38;2;248;248;242mimage[0m[38;2;248;248;242m.[0m[38;2;248;248;242mheight[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242marg[0m[38;2;248;248;242m([0m[38;2;248;248;242mQFile[0m[38;2;248;248;242m([0m[38;2;248;248;242mcurrentFile[0m[38;2;248;248;242m)[0m[38;2;248;248;242m.[0m[38;2;248;248;242msize[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m/[0m[38;2;248;248;242m [0m[38;2;190;132;255m1000[0m[38;2;190;132;255m.[0m[38;2;190;132;255m0[0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
35+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
36+[38;2;248;248;242m}[0m
38+[3;38;2;102;217;239mint[0m[38;2;248;248;242m [0m[38;2;166;226;46mmain[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
39+[38;2;248;248;242m{[0m
40+[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m tc[0m[38;2;248;248;242m;[0m
41+[38;2;248;248;242m cin [0m[38;2;249;38;114m>>[0m[38;2;248;248;242m tc[0m[38;2;248;248;242m;[0m
42+[38;2;248;248;242m [0m[38;2;249;38;114mwhile[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242mtc[0m[38;2;249;38;114m--[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m for each test case[0m
43+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
44+[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m
45+[38;2;248;248;242m cin [0m[38;2;249;38;114m>>[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m take n[0m
46+[38;2;248;248;242m vector[0m[38;2;248;248;242m<[0m[38;2;248;248;242mpair[0m[38;2;248;248;242m<[0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m,[0m[38;2;248;248;242m string[0m[38;2;248;248;242m>[0m[38;2;248;248;242m>[0m[38;2;248;248;242m v[0m[38;2;248;248;242m;[0m
48+[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m a[0m[38;2;248;248;242m[[0m[38;2;248;248;242mn[0m[38;2;248;248;242m][0m[38;2;248;248;242m,[0m[38;2;248;248;242m b[0m[38;2;248;248;242m[[0m[38;2;248;248;242mn[0m[38;2;248;248;242m][0m[38;2;248;248;242m;[0m
50+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m i [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i [0m[38;2;249;38;114m<[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i[0m[38;2;249;38;114m++[0m[38;2;248;248;242m)[0m
51+[38;2;248;248;242m cin [0m[38;2;249;38;114m>>[0m[38;2;248;248;242m a[0m[38;2;248;248;242m[[0m[38;2;248;248;242mi[0m[38;2;248;248;242m][0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m take arrays[0m
52+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m i [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i [0m[38;2;249;38;114m<[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i[0m[38;2;249;38;114m++[0m[38;2;248;248;242m)[0m
53+[38;2;248;248;242m cin [0m[38;2;249;38;114m>>[0m[38;2;248;248;242m b[0m[38;2;248;248;242m[[0m[38;2;248;248;242mi[0m[38;2;248;248;242m][0m[38;2;248;248;242m;[0m
55+[38;2;248;248;242m priority_queue[0m[38;2;248;248;242m<[0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m>[0m[38;2;248;248;242m pq[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m inbuilt data structure - max heap (available in the bits/stdc++)[0m
57+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m i [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i [0m[38;2;249;38;114m<[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i[0m[38;2;249;38;114m++[0m[38;2;248;248;242m)[0m
58+[38;2;248;248;242m pq[0m[38;2;248;248;242m.[0m[38;2;248;248;242mpush[0m[38;2;248;248;242m([0m[38;2;248;248;242ma[0m[38;2;248;248;242m[[0m[38;2;248;248;242mi[0m[38;2;248;248;242m][0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m push elements into heap[0m
60+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m i [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i [0m[38;2;249;38;114m<[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i[0m[38;2;249;38;114m++[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m for each element in B[0m
61+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
62+[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m top_ele [0m[38;2;249;38;114m=[0m[38;2;248;248;242m pq[0m[38;2;248;248;242m.[0m[38;2;248;248;242mtop[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m max element in heap[0m
63+[38;2;248;248;242m pq[0m[38;2;248;248;242m.[0m[38;2;248;248;242mpop[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m deletion[0m
64+[38;2;248;248;242m pq[0m[38;2;248;248;242m.[0m[38;2;248;248;242mpush[0m[38;2;248;248;242m([0m[38;2;248;248;242mtop_ele [0m[38;2;249;38;114m^[0m[38;2;248;248;242m b[0m[38;2;248;248;242m[[0m[38;2;248;248;242mi[0m[38;2;248;248;242m][0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m push after operation[0m
65+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
67+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m i [0m[38;2;249;38;114m=[0m[38;2;248;248;242m n [0m[38;2;249;38;114m-[0m[38;2;248;248;242m [0m[38;2;190;132;255m1[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i [0m[38;2;249;38;114m>=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i[0m[38;2;249;38;114m--[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m restore A in ascending order[0m
68+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
69+[38;2;248;248;242m a[0m[38;2;248;248;242m[[0m[38;2;248;248;242mi[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m pq[0m[38;2;248;248;242m.[0m[38;2;248;248;242mtop[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
70+[38;2;248;248;242m pq[0m[38;2;248;248;242m.[0m[38;2;248;248;242mpop[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
71+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
73+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m i [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i [0m[38;2;249;38;114m<[0m[38;2;248;248;242m n[0m[38;2;248;248;242m;[0m[38;2;248;248;242m i[0m[38;2;249;38;114m++[0m[38;2;248;248;242m)[0m
74+[38;2;248;248;242m cout [0m[38;2;249;38;114m<<[0m[38;2;248;248;242m a[0m[38;2;248;248;242m[[0m[38;2;248;248;242mi[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m<<[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116m [0m[38;2;230;219;116m"[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;117;113;94m//[0m[38;2;117;113;94m print A[0m
76+[38;2;248;248;242m cout [0m[38;2;249;38;114m<<[0m[38;2;248;248;242m endl[0m[38;2;248;248;242m;[0m
77+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
78+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m
79+[38;2;248;248;242m}[0m