99클럽 코테 스터디 27일차 TIL + 정렬

2024. 11. 23. 11:56Algorithm Problem Solving

https://www.acmicpc.net/problem/11557

1. 알고리즘! 생각해보자

1) implements Comparable<>
2) Collections.sort()
3) 정렬된 것 중에 마지막(max) 리턴

2. 해결 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;


class YJJ implements Comparable<YJJ>{
	private String school;
	private int sul;

	public String getSchool() {return school;}

	public YJJ(String school, int sul) {
		this.school = school;
		this.sul = sul;
	}

	@Override
	public int compareTo(YJJ o) {
		if(sul > o.sul) return 1;
		else if(sul < o.sul) return -1;
		else return 0;
	}
}

public class Main {

	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		final int T = Integer.parseInt(br.readLine());
		
		StringBuffer sb = new StringBuffer();
		
		for(int i = 0; i < T ; i++) {
			final int N = Integer.parseInt(br.readLine());
			ArrayList<YJJ> list = new ArrayList<YJJ>();
			for(int j = 0; j < N ; j++) {
				String strtmp = br.readLine();
				String[] strArr = strtmp.split(" ");
				list.add(new YJJ(strArr[0], Integer.parseInt(strArr[1])));
			}
			
			Collections.sort(list);
			YJJ yjj = list.get(N-1);
			if(i<T-1)
				sb.append(yjj.getSchool()+"\n");
			else
				sb.append(yjj.getSchool());
		}
		System.out.println(sb);
	}
}

3. 레퍼런스

 

[백준] Yangjojang of The Year (11557)(java)

원본 문제 : https://www.acmicpc.net/problem/11557 문제 입학 OT때 누구보다도 남다르게 놀았던 당신은 자연스럽게 1학년 과대를 역임하게 되었다. 타교와의 조인트 엠티를 기획하려는 당신은 근처에 있는

youjourney.tistory.com