Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.kietna.codeultimate;
- import java.text.*;
- import java.util.*;
- import java.io.*;
- import java.text.SimpleDateFormat;
- import java.util.concurrent.TimeUnit;
- public class main {
- public static String cht(String s){
- String res = "";
- String[] st = s.trim().split("\\s+");
- for(int j = 0; j < st.length; j++){
- String i = st[j];
- res = res + i.substring(0, 1).toUpperCase() + i.substring(1).toLowerCase();
- if(j!=st.length - 1){
- res = res + " ";
- }
- }
- return res;
- }
- static class SV{
- private String ma;
- private String ten;
- private String lop;
- private String email;
- private String dn;
- public SV(String ma, String ten, String lop, String email){
- this.ma = ma;
- this.ten = cht(ten);
- this.lop = lop;
- this.email = email;
- }
- public void setDn(String dn){
- this.dn = dn;
- }
- public String getMa(){
- return ma;
- }
- @Override
- public String toString(){
- return ma + " " + ten + " " + lop;
- }
- }
- static class DN{
- private String ma;
- private String ten;
- private int sl;
- public DN(String ma, String ten, int sl){
- this.ma = ma;
- this.ten = ten;
- this.sl = sl;
- }
- }
- static class TT{
- private String ma;
- private String dn;
- public TT(String ma, String dn){
- this.dn = dn;
- this.ma = ma;
- }
- public String getMa(){
- return ma;
- }
- }
- public static void main(String[] args) throws FileNotFoundException {
- // Scanner cin = new Scanner(new File("E:\\OOP\\CodeUltimate\\src\\main\\java\\com\\kietna\\codeultimate\\SINHVIEN.in"));
- // Scanner cin2 = new Scanner(new File("E:\\OOP\\CodeUltimate\\src\\main\\java\\com\\kietna\\codeultimate\\DN.IN"));
- // Scanner cin3 = new Scanner(new File("E:\\OOP\\CodeUltimate\\src\\main\\java\\com\\kietna\\codeultimate\\THUCTAP.IN"));
- Scanner cin = new Scanner(new File("SINHVIEN.in"));
- Scanner cin2 = new Scanner(new File("DN.IN"));
- Scanner cin3 = new Scanner(new File("THUCTAP.IN"));
- List<SV> dssv = new ArrayList<>();
- List<DN> dsdn = new ArrayList<>();
- List<TT> dstt = new ArrayList<>();
- int numsv = Integer.parseInt(cin.nextLine());
- while(numsv-->0){
- String masv = cin.nextLine();
- String tensv = cin.nextLine();
- String lop = cin.nextLine();
- String email = cin.nextLine();
- SV sv = new SV(masv,tensv,lop,email);
- dssv.add(sv);
- }
- int numdn = Integer.parseInt(cin2.nextLine());
- while(numdn-->0){
- String madn = cin2.nextLine();
- String tendn = cin2.nextLine();
- int amount = Integer.parseInt(cin2.nextLine());
- DN dn = new DN(madn,tendn,amount);
- dsdn.add(dn);
- }
- int numtt = Integer.parseInt(cin3.nextLine());
- while(numtt-->0){
- String all = cin3.nextLine();
- String st[] = all.split("\\s+");
- String matt = st[0];
- String dntt = st[1];
- TT tt = new TT(matt, dntt);
- dstt.add(tt);
- }
- dstt.sort(Comparator.comparing(TT::getMa));
- ArrayList<String> cnt = new ArrayList<>();
- for(TT i : dstt){
- int limit = 0;
- String madnnhan = "";
- for(DN k : dsdn){
- if(i.dn.equals(k.ma)){
- limit = k.sl;
- madnnhan = k.ma;
- }
- }
- for(SV j : dssv){
- if(j.ma.equals(i.ma)){
- cnt.add(madnnhan);
- int count = Collections.frequency(cnt, madnnhan);
- if(count <= limit){
- j.setDn(madnnhan);
- }
- }
- }
- }
- int req = Integer.parseInt(cin3.nextLine());
- while(req-->0){
- String madnreq = cin3.nextLine();
- String tendnreq = "";
- for(DN i : dsdn){
- if(i.ma.equals(madnreq)){
- tendnreq = i.ten;
- }
- }
- System.out.println("DANH SACH THUC TAP TAI " + tendnreq + ":");
- List<SV>dssvtt = new ArrayList<>();
- for(SV i : dssv){
- if(i.dn.equals(madnreq)){
- dssvtt.add(i);
- }
- }
- dssvtt.sort(Comparator.comparing(SV::getMa));
- for(SV j : dssvtt){
- System.out.println(j);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement