import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

public class Main{
  public static void main(String[] args){
    Scanner in=new Scanner(System.in);
    int times=in.nextInt();
    int minLine=in.nextInt();
    int maxLine=in.nextInt();
    List<Student> students=new ArrayList<Student>();
    in.nextLine();
    for(int i=0;i<times;i++) {
    	Student stu=new Student();
    	stu.setStudyNumber(in.nextInt());
    	stu.setMoralGrade(in.nextInt());
    	stu.setTalentGrade(in.nextInt());
    	students.add(stu);
    }
    List<Student> students1=new ArrayList<Student>();
    List<Student> students2=new ArrayList<Student>();
    List<Student> students3=new ArrayList<Student>();
    List<Student> students4=new ArrayList<Student>();
//	  获得四类学生的数目
	  for(int i=0;i<students.size();i++) {
		  if(students.get(i).getMoralGrade()>=minLine&&students.get(i).getTalentGrade()>=minLine) {
			  if(students.get(i).getMoralGrade()>=maxLine&&students.get(i).getTalentGrade()>=maxLine) {
				  students1.add(students.get(i));
			  }
			  else if(students.get(i).getMoralGrade()>=maxLine&&students.get(i).getTalentGrade()<maxLine) {
				  students2.add(students.get(i));
			  }else if(students.get(i).getMoralGrade()<maxLine&&students.get(i).getTalentGrade()<maxLine&&students.get(i).getMoralGrade()>students.get(i).getTalentGrade()) {
				  students3.add(students.get(i));
			  }else {
				  students4.add(students.get(i));
			  }
		  }
	  }
	  int sum=students1.size()+students2.size()+students3.size()+students4.size();
	  System.out.print(sum+"\n");
	  sortArray(students1);
	  sortArray(students2);
	  sortArray(students3);
	  sortArray(students4);
	  in.close();
  }
// 对数组按德才总分排序并输出 
  public static void sortArray(List<Student> students) {
	  Collections.sort(students);
	  for(int i=0;i<students.size();i++) {
		  System.out.println(students.get(i).toString());
	  }
  }
}
class Student implements Comparable<Student>{
	private int studyNumber;
	private int moralGrade;
	private int talentGrade;
	public int getStudyNumber() {
		return studyNumber;
	}
	public void setStudyNumber(int studyNumber) {
		this.studyNumber = studyNumber;
	}
	public int getMoralGrade() {
		return moralGrade;
	}
	public void setMoralGrade(int moralGrade) {
		this.moralGrade = moralGrade;
	}
	public int getTalentGrade() {
		return talentGrade;
	}
	public void setTalentGrade(int talentGrade) {
		this.talentGrade = talentGrade;
	}
	@Override
	public int compareTo(Student stu) {
		if(this.moralGrade+this.talentGrade!=stu.moralGrade+stu.talentGrade) {
			return (stu.moralGrade+stu.talentGrade-this.moralGrade-this.talentGrade);
		}else{
			if(this.moralGrade!=stu.moralGrade) {
				return stu.moralGrade-this.moralGrade;
			}else {
				return this.studyNumber-stu.studyNumber;
			}
		}
	}
	public String toString() {
		String a=String.valueOf(studyNumber);
		String b=String.valueOf(moralGrade);
		String c=String.valueOf(talentGrade);
		return a+" "+b+" "+c;
	}
  }