알고리즘 문제풀이/백준

#7568 : 덩치

모항 2022. 5. 3. 00:09

풀이방법

사용된 것:

브루트포스 알고리즘

 

2022.05.03

모든 사람에 대하여,

본인보다 몸무게도 무겁고 키도 큰 사람의 수를 일일이 세어주면 된다.

 

코드

Java(2022.05.03)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

	public static void main(String[] args) throws IOException{
		// TODO Auto-generated method stub
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		//데이터 읽어오기
		int n = Integer.parseInt(br.readLine());
		Person[] list = new Person[n];
		for(int i = 0; i<n; i++) {
			StringTokenizer st = new StringTokenizer(br.readLine());
			list[i] = new Person(Integer.parseInt(st.nextToken()), Integer.parseInt(st.nextToken()));
		}
		
		//모든 사람에 대하여 일일이 순위 구하기
		for(Person cur : list) {
			int r = 1;	//사람 cur의 순위(초기값은 1)
			
			//자신보다 덩치가 큰 놈을 발견할 때마다 순위가 1씩 밀려남
			for(Person p : list) {
				//몸무게부터 비교하고 그 다음 키 비교
				if(p.w>cur.w) if(p.h>cur.h) r++;
			}
			
			//정해진 순위를 부여
			cur.rank = r;
		}
		
		//정답 출력
		StringBuilder sb = new StringBuilder();
		for(Person p : list) sb.append(p.rank + " ");
		System.out.print(sb);

	}

}

//사람 클래스
class Person{
	int w;	//몸무게
	int h;	//키
	int rank;	//순위
	public Person(int w, int h) {
		this.w = w;
		this.h = h;
	}
}

'알고리즘 문제풀이 > 백준' 카테고리의 다른 글

#14928 : 큰 수 (BIG)  (0) 2022.05.03
#1436 : 영화감독 숌  (0) 2022.05.03
#1193 : 분수찾기  (0) 2022.05.01
#2869 : 달팽이는 올라가고 싶다  (0) 2022.05.01
#13335 : 트럭  (0) 2022.04.30