import java.util.*;
public class Solution
{
    public static void main(String args[])
    {
       Scanner sc=new Scanner(System.in);
       int n=sc.nextInt();
       int k=sc.nextInt();
       int a[][]=new int[n][3];
       for(int i=0;i<n;i++)
       {
    	   for(int j=0;j<3;j++)
    	   {
    		   a[i][j]=sc.nextInt();
    	   }
       }
       List<Integer> alice=new ArrayList<Integer>();
       List<Integer> bob=new ArrayList<Integer>();
       List<Integer> albob=new ArrayList<Integer>();
       for(int i=0;i<n;i++)
       {
    	   if(a[i][1]==1 && a[i][2]==0)
    		   alice.add(a[i][0]);
    	   if(a[i][1]==0 && a[i][2]==1)
    		   bob.add(a[i][0]);
    	   if(a[i][1]==1 && a[i][2]==1)
    		   albob.add(a[i][0]);
       }
       Collections.sort(alice);
       Collections.sort(bob);
       Collections.sort(albob);
       int sum=0;
       if(alice.isEmpty() || bob.isEmpty())
     	{
   		if(albob.size()>=k)
   		{
   		     	
   			for(int i=0;i<k;i++)
   			{
   				sum+=albob.get(i);
   			}
   		}
   		}
       else if(albob.isEmpty() && alice.size()>=k && bob.size()>=k)
   	     {
   		
   			for(int i=0;i<k;i++)
   				sum+=alice.get(i)+bob.get(i);
   		}
       else
       {
    	   int z=0;
    	   int ct=0;
    	   List<Integer> sum1=new ArrayList<Integer>();
       	while(z<alice.size() && z<bob.size() && z<albob.size())
       	{
       		if( alice.get(z)+bob.get(z)<=albob.get(z))
       		{
       			sum+=alice.get(z)+bob.get(z);
       			sum1.add(albob.get(z));
       		}
       		else
       		{
       			sum+=albob.get(z);
       			sum1.add(alice.get(z)+bob.get(z));
       		}
       		z++;
       		ct++;
       	}
       	while(z<albob.size())
       	{
       		sum+=albob.get(z);
       		z++;
       		ct++;
       	}
       	if(ct!=k)
       	{
       		int c=0;
       		while(ct<k && !sum1.isEmpty())
       		{
       			sum+=sum1.get(c);
       			c++;
       			ct++;
       		}
       	}
       		
       }
       if(sum>0)
    	   System.out.println(sum);
       else
    	   System.out.println("-1");
    		   
     }
        
}
