
import java.util.*;
import java.io.*;

public class Main {
	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		String[] cmd=br.readLine().split(" ");
		int n=Integer.valueOf(cmd[0]);
		int k=Integer.valueOf(cmd[1]);
		ArrayList<Integer> both=new ArrayList<>();
		ArrayList<Integer> al=new ArrayList<Integer>();
		ArrayList<Integer> bo=new ArrayList<Integer>();
		for(int i=0;i<n;i++)
		{
			cmd=br.readLine().split(" ");
			int t=Integer.valueOf(cmd[0]);
			int a=Integer.valueOf(cmd[1]);
			int b=Integer.valueOf(cmd[2]);
			if(a==1 && b==1)
				both.add(t);
			else if(a==1 && b==0)
				al.add(t);
			else if(a==0 && b==1)
				bo.add(t);
		}
		if(both.size()+al.size()<k || both.size()+bo.size()<k)
			System.out.println(-1);
		else
		{
			int ans=0;
			Collections.sort(both);
			Collections.sort(al);
			Collections.sort(bo);
			for(int i=0;i<both.size();i++)
			{
				if(k==0)
					break;
				ans=ans+both.get(i);
				k--;
			}
			int m1=k;
			int m2=k;
			for(int i=0;i<al.size();i++)
			{
				if(m1==0)
					break;
				ans=ans+al.get(i);
				m1--;
			}
			for(int i=0;i<bo.size();i++)
			{
				if(m2==0)
					break;
				ans=ans+bo.get(i);
				m2--;
			}
			System.out.println(ans);
		}
			
	}
}
