/* written by Pankaj Kumar. country:-INDIA Institute: National Institute of Technology, Uttarakhand */ #include #include #include using namespace std; using namespace __gnu_pbds; typedef long long ll ; typedef unsigned long long ull; typedef vector vl; #define speed cin.tie(0);cout.tie(0);ios_base::sync_with_stdio(0); /* Abbrevations */ #define ff first #define ss second #define mp make_pair #define line cout<>arr[i]; // Some print #define no cout<<"NO"<()) // some extra #define printv(v) for(ll i=0;i T mymax(T x,T y) { return (x>y)?x:y; } // function ll power(ll x,ll y,ll mod) { ll res=1; // x=x%mod; while(y>0) { if(y%2==1) { res*=x; // res=res%mod; } y/=2; x*=x; // x=x%mod; } return res; } ll str_to_num(string s) { stringstream pk(s); ll num; pk>>num; return num; } string num_to_str(ll num) { return to_string(num); } // datatype definination #define ordered_set tree,rb_tree_tag,tree_order_statistics_node_update> class Point { public: ll x; ll y; ll z; ll getsum() { return x+y+z; } }; /* ascii value A=65,Z=90,a=97,z=122 */ /* --------------------MAIN PROGRAM----------------------------*/ // to run ctrl+b const ll INF=LONG_MAX; const ll mod1=1e9+7; const ll mod2=998244353; // Techniques // divide into cases, brute force, pattern finding // sort, greedy, binary search, two pointer // transform into graph vector> ncr(52,vector(52,0)); void cal(){ ncr[0][0]=1; for(ll i=1;i<=50;i++){ ncr[i][0]=1; for(ll j=1;j<=50;j++){ ncr[i][j]=(ncr[i-1][j]+ncr[i-1][j-1]); } } return ; } ll solve() { ll n,k; cin>>n>>k; vl v(n); forin(v,n); srt(v); map m; for(ll i=0;i m2; for(ll i=0;i>TestCase; while(TestCase--) { solve(); } } /* -----------------END OF PROGRAM --------------------*/ /* * stuff you should look before submission * constraint and time limit * int overflow * special test case (n=0||n=1||n=2) * don't get stuck on one approach if you get wrong answer */