Wonderful Contest

Revision en1, by vipulcyber, 2022-08-16 19:58:32

You are given a permutation p1,p2,…,pn of length n and a positive integer k≤n.

In one operation you can choose two indices i and j (1≤i<j≤n) and swap pi with pj.

Find the minimum number of operations needed to make the sum p1+p2+…+pk as small as possible.

A permutation is an array consisting of n distinct integers from 1 to n in arbitrary order. For example, [2,3,1,5,4] is a permutation, but [1,2,2] is not a permutation (2 appears twice in the array) and [1,3,4] is also not a permutation (n=3 but there is 4 in the array).

Input Each test contains multiple test cases. The first line contains the number of test cases t (1≤t≤100). Description of the test cases follows.

The first line of each test case contains two integers n and k (1≤k≤n≤100).

The second line of each test case contains n integers p1,p2,…,pn (1≤pi≤n). It is guaranteed that the given numbers form a permutation of length n.

Output For each test case print one integer — the minimum number of operations needed to make the sum p1+p2+…+pk as small as possible.

INPUT:

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

OUTPUT:

1 0 2 0

Your code here...
#include<bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
while(t--)
{
int n,k;
cin>>n>>k;
int a[n];
for(int i=0;i<n;i++)
{
cin>>a[i];
}

int cnt=0;

set<int>s;
for(int i=1;i<=k;i++)
{
s.insert(i);
}
for(int i=0;i<k;i++)
{
if(s.find(a[i])!=s.end())
{
s.erase(a[i]);
}
}
cout<<s.size()<<endl;

}
return 0;
}


#### History

Revisions

Rev. Lang. By When Δ Comment
en3 vipulcyber 2022-08-16 19:59:54 17 Tiny change: 'n\n~~~~~\nYour code here...\n#include' -> 'n\n~~~~~\n\n#include'
en2 vipulcyber 2022-08-16 19:59:32 22
en1 vipulcyber 2022-08-16 19:58:32 1785 Initial revision (published)