import [Link].
*;
class Rectangle implements Comparable<Rectangle> {
protected int length;
protected int width;
public Rectangle(int length, int width) {
[Link] = length;
[Link] = width;
public int area() {
return length * width;
public String toString() {
return "Rectangle(" + length + ", " + width + ")";
public int compareTo(Rectangle that) {
return [Link]([Link](), [Link]());
class Square extends Rectangle {
private double diagonal;
public Square(int side) {
super(side, side);
[Link] = side * 1.4142;
public int getSide() {
return length;
}
public String toString() {
return "Square(" + length + ")";
public class ShapeTest {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
int n = [Link]([Link]());
List<Rectangle> shapes = new ArrayList<>();
for (int i = 0; i < n; i++) {
String[] input = [Link]().split(" ");
int l = [Link](input[0]);
int w = [Link](input[1]);
if (l == w) {
[Link](new Square(l));
} else {
[Link](new Rectangle(l, w));
[Link]("Shape\tArea");
for (Rectangle shape : shapes) {
[Link](shape + "\t" + [Link]());
}
[Link]();
}
import [Link].*;
class SinhVien implements Comparable<SinhVien> {
protected String maSv;
protected String hoTen;
protected String chuyenNganh;
public SinhVien(String maSv, String hoTen, String chuyenNganh) {
[Link] = maSv;
[Link] = hoTen;
[Link] = chuyenNganh;
public String getMaSv() {
return maSv;
public void setMaSv(String maSv) {
[Link] = maSv;
public String getHoTen() {
return hoTen;
public void setHoTen(String hoTen) {
[Link] = hoTen;
public String getChuyenNganh() {
return chuyenNganh;
public void setChuyenNganh(String chuyenNganh) {
[Link] = chuyenNganh;
public void inThongTin() {
[Link]([Link]());
public String toString() {
return [Link]("SinhVien(%s, %s, %s)", maSv, hoTen, chuyenNganh);
public int compareTo(SinhVien that) {
return [Link]([Link]);
class SinhVienVMU extends SinhVien {
private int mosWord;
private int mosExcel;
public SinhVienVMU(String maSv, String hoTen, String chuyenNganh, int mosWord, int mosExcel) {
super(maSv, hoTen, chuyenNganh);
[Link] = mosWord;
[Link] = mosExcel;
public int getMosWord() {
return mosWord;
public void setMosWord(int mosWord) {
[Link] = mosWord;
public int getMosExcel() {
return mosExcel;
public void setMosExcel(int mosExcel) {
[Link] = mosExcel;
public String toString() {
return [Link]("SinhVienVMU(%s, %s, %s, %d, %d)", maSv, hoTen, chuyenNganh,
mosWord, mosExcel);
public class SinhVienTest {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
int n = [Link]([Link]());
List<SinhVien> sinhVienList = new ArrayList<>();
for (int i = 0; i < n; i++) {
String line = [Link]();
String[] parts = [Link]("\t");
if ([Link] == 3) {
String maSv = parts[0];
String hoTen = parts[1];
String chuyenNganh = parts[2];
[Link](new SinhVien(maSv, hoTen, chuyenNganh));
} else if ([Link] == 5) {
String maSv = parts[0];
String hoTen = parts[1];
String chuyenNganh = parts[2];
int mosWord = [Link](parts[3]);
int mosExcel = [Link](parts[4]);
[Link](new SinhVienVMU(maSv, hoTen, chuyenNganh, mosWord, mosExcel));
for (SinhVien sv : sinhVienList) {
[Link](sv);
[Link]();
public static int intReverse(int number) {
int reversed = 0;
while (number != 0) {
int digit = number % 10;
reversed = reversed * 10 + digit;
number /= 10;
return reversed;
}
public class PhanSo {
private int tu;
private int mau;
public PhanSo() {
[Link] = 0;
[Link] = 1;
public PhanSo(int tu, int mau) {
if (mau == 0) {
throw new IllegalArgumentException("Mau so phai khac 0.");
[Link] = tu;
[Link] = mau;
rutGon();
public void inPhanSo() {
[Link]([Link]());
public String toString() {
return tu + "/" + mau;
public void daoDau() {
[Link] = -[Link];
public void nghichDao() {
if ([Link] == 0) {
throw new IllegalArgumentException("Khong the nghich dao khi tu so bang 0.");
int temp = [Link];
[Link] = [Link];
[Link] = temp;
rutGon();
public double toDouble() {
return (double) [Link] / [Link];
public void rutGon() {
int gcd = ucln([Link](tu), [Link](mau));
[Link] /= gcd;
[Link] /= gcd;
if ([Link] < 0) {
[Link] = -[Link];
[Link] = -[Link];
private int ucln(int a, int b) {
while (b != 0) {
int temp = b;
b = a % b;
a = temp;
return a;
public PhanSo cong(PhanSo that) {
int newTu = [Link] * [Link] + [Link] * [Link];
int newMau = [Link] * [Link];
return new PhanSo(newTu, newMau);
}
import [Link];
class Candidate {
private int id;
private String name;
private String gender;
private String birthday;
private String email;
private double gpa;
public Candidate(int id, String name, String gender, String birthday, String email, double gpa) {
[Link] = id;
[Link] = name;
[Link] = gender;
[Link] = birthday;
[Link] = email;
[Link] = gpa;
public int getId() {
return id;
public void setId(int id) {
[Link] = id;
public String getName() {
return name;
public void setName(String name) {
[Link] = name;
public String getGender() {
return gender;
public void setGender(String gender) {
[Link] = gender;
}
public String getBirthday() {
return birthday;
public void setBirthday(String birthday) {
[Link] = birthday;
public String getEmail() {
return email;
public void setEmail(String email) {
[Link] = email;
public double getGpa() {
return gpa;
public void setGpa(double gpa) {
[Link] = gpa;
public String toString() {
return [Link]("%d, %s, %s, %s, %s, %.2f", id, name, gender, birthday, email, gpa);
class CandidateManagement {
private ArrayList<Candidate> candidateList;
public CandidateManagement() {
candidateList = new ArrayList<>();
public void addCandidate(Candidate candidate) {
[Link](candidate);
public void removeCandidateById(int id) {
for (int i = 0; i < [Link](); i++) {
if ([Link](i).getId() == id) {
[Link](i);
break;
public void display() {
for (Candidate candidate : candidateList) {
[Link](candidate);
public class Test {
public static void main(String[] args) {
Candidate c1 = new Candidate(1, "Bill", "Male", "20-May-1980", "bill@[Link]", 4.9);
[Link](c1);
Candidate c2 = new Candidate(1, "Bill", "Male", "20-May-1980", "bill@[Link]", 3.9);
[Link](c2);
[Link](2);
[Link]("Mary");
[Link]("Female");
[Link]("21-Jun-1981");
[Link]("mary@[Link]");
[Link](4.0);
[Link](c2);
Candidate c3 = new Candidate(1, "Mark", "Male", "20-May-1999", "mark@[Link]", 2.9);
Candidate c4 = new Candidate(2, "Mary", "Female", "20-Dec-2000", "mary@[Link]", 3.0);
Candidate c5 = new Candidate(3, "Bill", "Male", "31-May-1980", "bill@[Link]", 3.9);
Candidate c6 = new Candidate(4, "Rose", "Female", "01-Jan-2009", "rose@[Link]", 4.0);
CandidateManagement cm = new CandidateManagement();
[Link](c3);
[Link](c4);
[Link](c5);
[Link](c6);
[Link](new Candidate(5, "Thuong", "Male", "20-May-1980",
"thuongvv@[Link]", 3.9));
[Link]();
}
import [Link].*;
class Person implements Comparable<Person> {
private String firstName;
private String lastName;
private String email;
private int age;
public Person(String firstName, String lastName, String email, int age) {
[Link] = firstName;
[Link] = lastName;
[Link] = email;
[Link] = age;
public String getFirstName() {
return firstName;
public void setFirstName(String firstName) {
[Link] = firstName;
public String getLastName() {
return lastName;
public void setLastName(String lastName) {
[Link] = lastName;
public String getEmail() {
return email;
public void setEmail(String email) {
[Link] = email;
public int getAge() {
return age;
}
public void setAge(int age) {
[Link] = age;
public String toString() {
return [Link]("%s, %s, %s, %d", firstName, lastName, email, age);
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != [Link]()) return false;
Person person = (Person) obj;
return age == [Link] &&
[Link](firstName, [Link]) &&
[Link](lastName, [Link]) &&
[Link](email, [Link]);
public int compareTo(Person other) {
return [Link]([Link], [Link]);
public class PersonTest {
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int n = [Link]([Link]());
List<Person> personList = new ArrayList<>();
for (int i = 0; i < n; i++) {
String input = [Link]();
String[] tokens = [Link](" ");
String firstName = tokens[0];
String lastName = tokens[1];
String email = tokens[2];
int age = [Link](tokens[3]);
[Link](new Person(firstName, lastName, email, age));
[Link]([Link]());
for (Person p : personList) {
[Link](p);
[Link]();
}
import [Link].*;
class Person implements Comparable<Person> {
private String firstName;
private String lastName;
private String email;
private int age;
public Person(String firstName, String lastName, String email, int age) {
[Link] = firstName;
[Link] = lastName;
[Link] = email;
[Link] = age;
public String getFirstName() {
return firstName;
public void setFirstName(String firstName) {
[Link] = firstName;
public String getLastName() {
return lastName;
public void setLastName(String lastName) {
[Link] = lastName;
public String getEmail() {
return email;
public void setEmail(String email) {
[Link] = email;
public int getAge() {
return age;
public void setAge(int age) {
[Link] = age;
public String toString() {
return [Link]("%s, %s, %s, %d", firstName, lastName, email, age);
}
public boolean equals(Person that) {
return [Link]([Link]) &&
[Link]([Link]) &&
[Link]([Link]) &&
[Link] == [Link];
public int compareTo(Person obj) {
if (obj != null) {
if ([Link] < [Link])
return -1;
else if ([Link] > [Link])
return 1;
else
return 0;
return -1;
public class PersonTest {
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int n = [Link]([Link]());
List<Person> personList = new ArrayList<>();
for (int i = 0; i < n; i++) {
String input = [Link]();
String[] tokens = [Link](" ");
String firstName = tokens[0];
String lastName = tokens[1];
String email = tokens[2];
int age = [Link](tokens[3]);
[Link](new Person(firstName, lastName, email, age));
[Link](personList);
for (Person p : personList) {
[Link](p);
[Link]();
}
import [Link];
class Point
private int x;
private int y;
public Point()
x = 0;
y = 0;
public Point(int x, int y)
this.x = x; this.y = y;
public int getX()
{
return x;
public void setX(int x)
this.x = x;
public int getY()
return y;
public void setY(int y)
this.y = y;
public void shift(int dx, int dy)
this.x += dx; this.y += dy;
public double distance(Point otherPoint)
return [Link]([Link]((x-otherPoint.x), 2) + [Link]((y-otherPoint.y), 2));
@Override
public String toString()
return [Link]("%d %d", x, y);
class Line
{
private Point pointA;
private Point pointB;
public Line()
pointA = new Point(0,0);
pointB = new Point(0,0);
public Line(Point pointA, Point pointB)
[Link] = pointA;
[Link] = pointB;
public Point endPointA()
return pointA;
public Point endPointB()
return pointB;
public double length()
return [Link](pointB);
public boolean isVertical()
return ([Link]() == [Link]());
public class Test1
{
public static void main(String[] args)
Scanner sc = new Scanner([Link]);
int n = [Link]();
Point p1, p2, p3;
Line l1, l2, l3;
int x1, y1, x2, y2, x3, y3;
for (int i=0; i<n; i++)
x1 = [Link](); y1 = [Link]();
x2 = [Link](); y2 = [Link]();
x3 = [Link](); y3 = [Link]();
p1 = new Point(x1, y1);
p2 = new Point(x2, y2);
p3 = new Point(x3, y3);
l1 = new Line(p1,p2);
l2 = new Line(p1,p3);
l3 = new Line(p2,p3);
if( [Link]()+[Link]()>[Link]() && [Link]()+[Link]()>[Link]() && [Link]()
+[Link]()>[Link]() )
[Link](p1 + " " + p2 + " " + p3 );
}
import [Link];
import [Link];
import [Link];
abstract class Person {
protected String fullName;
protected String gender;
protected String phone;
protected String email;
public Person(String fullName, String gender, String phone, String email) {
[Link] = fullName;
[Link] = gender;
[Link] = phone;
[Link] = email;
}
public abstract void purchaseParkingPass();
public abstract String toString();
class Student extends Person {
private String studentId;
private double theory;
private double practice;
public Student(String fullName, String gender, String phone, String email, String studentId, double
theory, double practice) {
super(fullName, gender, phone, email);
if (theory < 0 || theory > 10 || practice < 0 || practice > 10) {
throw new IllegalArgumentException("Điểm phải nằm trong khoảng 0 đến 10.");
[Link] = studentId;
[Link] = theory;
[Link] = practice;
public double calculateFinalMark() {
return (theory + practice) / 2.0;
public String toString() {
return [Link]("Student(%s, %s, %s, %s, %s, %.2f, %.2f)",
fullName, gender, phone, email, studentId, theory, practice);
}
public void purchaseParkingPass() {
class Teacher extends Person {
private double basicSalary;
private double subsidy;
public Teacher(String fullName, String gender, String phone, String email, double basicSalary,
double subsidy) {
super(fullName, gender, phone, email);
[Link] = basicSalary;
[Link] = subsidy;
public double calculateSalary() {
return basicSalary + subsidy;
public String toString() {
return [Link]("Teacher(%s, %s, %s, %s, %.2f, %.2f)",
fullName, gender, phone, email, basicSalary, subsidy);
public void purchaseParkingPass() {
public class PersonStudentTeacherTest {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
List<Person> list = new ArrayList<>();
int n = [Link]([Link]());
for (int i = 0; i < n; i++) {
String[] input = [Link]().split("\t");
if (input[0].equals("Student")) {
String fullName = input[1];
String gender = input[2];
String phone = input[3];
String email = input[4];
String studentId = input[5];
double theory = [Link](input[6]);
double practice = [Link](input[7]);
[Link](new Student(fullName, gender, phone, email, studentId, theory, practice));
} else if (input[0].equals("Teacher")) {
String fullName = input[1];
String gender = input[2];
String phone = input[3];
String email = input[4];
double basicSalary = [Link](input[5]);
double subsidy = [Link](input[6]);
[Link](new Teacher(fullName, gender, phone, email, basicSalary, subsidy));
for (Person person : list) {
if (person instanceof Teacher) {
Teacher teacher = (Teacher) person;
if ([Link]() > 10000000) {
[Link](teacher);
}
}
public static int centuryFromYear(int year) {
return (year + 99) / 100;
import [Link];
import [Link];
public class cau2 {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
int n = [Link]();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = [Link]();
int minValue = arr[0];
int minIndex = 0;
for (int i = 1; i < n; i++) {
if (arr[i] < minValue) {
minValue = arr[i];
minIndex = i;
[Link]((minIndex) + " " + minValue);
}
import [Link];
class Animal {
private String name;
private int numOfLegs;
public Animal(String name, int numOfLegs) {
[Link] = name;
[Link] = numOfLegs;
public void makeSound() {
public String getName() {
return name;
public void setName(String name) {
[Link] = name;
public int getNumOfLegs() {
return numOfLegs;
public void setNumOfLegs(int numOfLegs) {
[Link] = numOfLegs;
public String toString() {
return "Animals(" + name + ", " + numOfLegs + ")";
}
class Bird extends Animal {
public Bird(String name, int numOfLegs) {
super(name, numOfLegs);
public void makeSound() {
[Link]("TWEET");
public String toString() {
return "Bird(" + getName() + ", " + getNumOfLegs() + ")";
class Cow extends Animal {
public Cow(String name, int numOfLegs) {
super(name, numOfLegs);
public void makeSound() {
[Link]("MOO");
public String toString() {
return "Cow(" + getName() + ", " + getNumOfLegs() + ")";
}
class Dog extends Animal {
public Dog(String name, int numOfLegs) {
super(name, numOfLegs);
public void makeSound() {
[Link]("WOOF");
public String toString() {
return "Dog(" + getName() + ", " + getNumOfLegs() + ")";
public class Animals {
public static void main(String[] args) {
Animal a1 = new Bird("Barry", 2);
[Link](a1);
[Link]();
Animal a2 = new Cow("Bessie", 4);
[Link](a2);
[Link]();
Animal a3 = new Dog("Charlie", 4);
[Link](a3);
[Link]();
[Link]("Clive");
[Link]([Link]() + 1);
[Link](a1);
[Link]("Cinnamon");
[Link]([Link]() + 2);
[Link](a2);
[Link]("Sadie");
[Link]([Link]() + 3);
[Link](a3);
Scanner scanner = new Scanner([Link]);
int n = [Link]();
[Link]();
Animal[] arr = new Animal[n];
for (int i = 0; i < n; i++) {
String type = [Link]();
String name = [Link]();
int legs = [Link]();
[Link]();
if ([Link]("Bird")) {
arr[i] = new Bird(name, legs);
} else if ([Link]("Cow")) {
arr[i] = new Cow(name, legs);
} else if ([Link]("Dog")) {
arr[i] = new Dog(name, legs);
}
for (Animal animal : arr) {
[Link](animal);
[Link]();
}
import [Link];
import [Link];
class Point {
private int x, y;
public Point() {
this.x = 0;
this.y = 0;
public Point(int x, int y) {
this.x = x;
this.y = y;
}
public int getX() {
return x;
public void setX(int x) {
this.x = x;
public int getY() {
return y;
public void setY(int y) {
this.y = y;
public void shift(int dx, int dy) {
this.x += dx;
this.y += dy;
public double distance(Point that) {
return [Link]([Link](this.x - that.x, 2) + [Link](this.y - that.y, 2));
@Override
public String toString() {
return "Point(" + x + ", " + y + ")";
}
class Line {
private Point pointA, pointB;
public Line(Point pointA, Point pointB) {
[Link] = pointA;
[Link] = pointB;
public Point endPointA() {
return pointA;
public Point endPointB() {
return pointB;
public double length() {
return [Link](pointB);
public boolean isVertical() {
return [Link]() == [Link]();
public boolean isHorizontal() {
return [Link]() == [Link]();
@Override
public String toString() {
return [Link]() + "-->" + [Link]();
public class point {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
int n = [Link]();
[Link]();
ArrayList<Line> lines = new ArrayList<>();
for (int i = 0; i < n; i++) {
String[] data = [Link]().split(" ");
int x1 = [Link](data[0]);
int y1 = [Link](data[1]);
int x2 = [Link](data[2]);
int y2 = [Link](data[3]);
Point pointA = new Point(x1, y1);
Point pointB = new Point(x2, y2);
Line line = new Line(pointA, pointB);
[Link](line);
for (Line line : lines) {
if ([Link]()) {
[Link](line);
}
import [Link].*;
import [Link];
import [Link];
class Book implements Comparable<Book> {
private String name;
private int numOfPages;
private double price;
public Book() {
[Link] = null;
[Link] = 0;
[Link] = 0.0;
public Book(String name, int numOfPages, double price) {
[Link] = name;
[Link] = numOfPages;
[Link] = price;
public String getName() {
return name;
public void setName(String name) {
[Link] = name;
public int getNumOfPages() {
return numOfPages;
public void setNumOfPages(int numOfPages) {
[Link] = numOfPages;
public double getPrice() {
return price;
}
public void setPrice(double price) {
[Link] = price;
@Override
public String toString() {
return name + "\t" + numOfPages + "\t" + [Link]("%.2f", price);
@Override
public int compareTo(Book that) {
return [Link]([Link], [Link]);
class BookReaderWriter {
private Scanner scanner;
public BookReaderWriter(Scanner scanner) {
[Link] = scanner;
public Book readRecord() {
String line = [Link]();
String[] data = [Link](" ");
String name = data[0];
int numOfPages = [Link](data[1]);
double price = [Link](data[2]);
Book book = new Book(name, numOfPages, price);
return book;
}
public void writeRecord(Book book) {
[Link]([Link]());
public class BookTest {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
int n = [Link]();
int b = [Link]();
[Link]();
List<Book> books = new ArrayList<>();
BookReaderWriter bookReaderWriter = new BookReaderWriter(scanner);
for (int i = 0; i < n; i++) {
Book book = [Link]();
[Link](book);
[Link](books, [Link]());
for (int i = 0; i < b; i++) {
[Link]([Link](i));
}
}
public static void printHexa(int n) {
if (n == 0) {
return;
printHexa(n / 16);
int reminder = n % 16;
if (reminder >= 10) {
[Link]((char) ('A' + (reminder - 10)));
} else {
[Link](reminder);
}
import [Link].*;
public class TachChu {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
String line = [Link]();
String[] words = [Link](" ");
List<String> wordList = new ArrayList<>([Link](words));
[Link](wordList, [Link]());
for (int i = 0; i < [Link](); i++) {
[Link]([Link](i));
if (i != [Link]() - 1) {
[Link](" ");
} else {
[Link](" ");
}
class Rational {
private int numerator;
private int denominator;
public Rational(int numerator, int denominator) {
if (denominator == 0) {
throw new IllegalArgumentException("Mẫu số không thể bằng 0");
int gcd = gcd([Link](numerator), [Link](denominator));
[Link] = numerator / gcd;
[Link] = denominator / gcd;
if ([Link] < 0) {
[Link] = -[Link];
[Link] = -[Link];
public Rational() {
[Link] = 1;
[Link] = 1;
private int gcd(int a, int b) {
while (b != 0) {
int temp = b;
b = a % b;
a = temp;
return a;
public static Rational addRational(Rational r1, Rational r2) {
int numerator = [Link] * [Link] + [Link] * [Link];
int denominator = [Link] * [Link];
return new Rational(numerator, denominator);
public static Rational substractRational(Rational r1, Rational r2) {
int numerator = [Link] * [Link] - [Link] * [Link];
int denominator = [Link] * [Link];
return new Rational(numerator, denominator);
public static Rational multiplyRational(Rational r1, Rational r2) {
int numerator = [Link] * [Link];
int denominator = [Link] * [Link];
return new Rational(numerator, denominator);
public static Rational devideRational(Rational r1, Rational r2) {
if ([Link] == 0) {
throw new IllegalArgumentException("Không thể chia cho phân số có tử số bằng 0");
int numerator = [Link] * [Link];
int denominator = [Link] * [Link];
return new Rational(numerator, denominator);
@Override
public String toString() {
return numerator + "/" + denominator;
public String toFloatString(int precision) {
double result = (double) numerator / denominator;
return [Link]("%." + precision + "f", result);
}
import [Link].*;
class SinhVien implements Comparable<SinhVien> {
protected String maSv;
protected String hoTen;
protected String chuyenNganh;
public SinhVien(String maSv, String hoTen, String chuyenNganh) {
[Link] = maSv;
[Link] = hoTen;
[Link] = chuyenNganh;
public String getMaSv() {
return maSv;
}
public void setMaSv(String maSv) {
[Link] = maSv;
public String getHoTen() {
return hoTen;
public void setHoTen(String hoTen) {
[Link] = hoTen;
public String getChuyenNganh() {
return chuyenNganh;
public void setChuyenNganh(String chuyenNganh) {
[Link] = chuyenNganh;
public void inThongTin() {
[Link]([Link]());
@Override
public String toString() {
return "SinhVien(" + maSv + ", " + hoTen + ", " + chuyenNganh + ")";
}
@Override
public int compareTo(SinhVien that) {
return [Link]([Link]);
class SinhVienVMU extends SinhVien {
private int mosWord;
private int mosExcel;
public SinhVienVMU(String maSv, String hoTen, String chuyenNganh, int mosWord, int mosExcel) {
super(maSv, hoTen, chuyenNganh);
[Link] = mosWord;
[Link] = mosExcel;
public int getMosWord() {
return mosWord;
public void setMosWord(int mosWord) {
[Link] = mosWord;
public int getMosExcel() {
return mosExcel;
public void setMosExcel(int mosExcel) {
[Link] = mosExcel;
}
@Override
public String toString() {
return "SinhVienVMU(" + maSv + ", " + hoTen + ", " + chuyenNganh + ", " + mosWord + ", " +
mosExcel + ")";
public class SinhVienTest {
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int n = [Link]([Link]());
List<SinhVien> sinhVienList = new ArrayList<>();
for (int i = 0; i < n; i++) {
String line = [Link]();
String[] parts = [Link]("\t");
if ([Link] == 3) {
String maSv = parts[0];
String hoTen = parts[1];
String chuyenNganh = parts[2];
SinhVien sinhVien = new SinhVien(maSv, hoTen, chuyenNganh);
[Link](sinhVien);
} else if ([Link] == 5) {
String maSv = parts[0];
String hoTen = parts[1];
String chuyenNganh = parts[2];
int mosWord = [Link](parts[3]);
int mosExcel = [Link](parts[4]);
SinhVienVMU sinhVienVMU = new SinhVienVMU(maSv, hoTen, chuyenNganh, mosWord,
mosExcel);
[Link](sinhVienVMU);
for (SinhVien sinhVien : sinhVienList) {
[Link]();
[Link]();
Câu
For example:
Test Input Result
#2 21 Dac-nhan-tam 180 250000.00
Toi-ac-va-trung-phat 99 190000
Dac-nhan-tam 180 250000
#3 52 Nha-gia-kim 210 250000.00
Toi-tai-gioi-ban-cung-the 150 200000.00 Toi-tai-gioi-ban-cung-the 150
200000.00
Dac-nhan-tam 99 150000
Toi-ac-va-trung-phat 200 190000
Nha-gia-kim 210 250000
Bat-tre-dong-xanh 140 99000
import [Link].*;
import [Link];
import [Link];
class Book implements Comparable<Book> {
private String name;
private int numOfPages;
private double price;
public Book() {
[Link] = null;
[Link] = 0;
[Link] = 0.0;
public Book(String name, int numOfPages, double price) {
[Link] = name;
[Link] = numOfPages;
[Link] = price;
public String getName() {
return name;
public void setName(String name) {
[Link] = name;
public int getNumOfPages() {
return numOfPages;
public void setNumOfPages(int numOfPages) {
[Link] = numOfPages;
public double getPrice() {
return price;
public void setPrice(double price) {
[Link] = price;
@Override
public String toString() {
return name + "\t" + numOfPages + "\t" + [Link]("%.2f", price);
@Override
public int compareTo(Book that) {
return [Link]([Link], [Link]);
class BookReaderWriter {
private Scanner scanner;
public BookReaderWriter(Scanner scanner) {
[Link] = scanner;
public Book readRecord() {
String line = [Link]();
String[] data = [Link](" ");
String name = data[0];
int numOfPages = [Link](data[1]);
double price = [Link](data[2]);
Book book = new Book(name, numOfPages, price);
return book;
public void writeRecord(Book book) {
[Link]([Link]());
public class BookTest {
public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
int n = [Link]();
int b = [Link]();
[Link]();
List<Book> books = new ArrayList<>();
BookReaderWriter bookReaderWriter = new BookReaderWriter(scanner);
for (int i = 0; i < n; i++) {
Book book = [Link]();
[Link](book);
}
[Link](books, [Link]());
for (int i = 0; i < b; i++) {
[Link]([Link](i));