-
[7586번] 덩치 - Java알고리즘 연습 2021. 11. 22. 21:13
1. 배운점
- StringBuilder를 활용할 수 있다.
- 2차원 배열과 반복문을 활용해 값을 비교할 수 있다.
2. 개선할 점
3. 궁금한 점
- 2차원 배열을 쓰지 않고 풀 수 있는 방법은 없을까?
4. 풀이
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws Exception { // import java.io.BufferedReader BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 사람 수 받아주기 int people = Integer.parseInt(br.readLine()); // 키, 몸무게 값을 저장할 2차원 배열 생성 int [][] array = new int [people][2]; // StringTokenizer를 활용해 배열 값 입력 for(int i = 0; i < people; i++) { StringTokenizer st = new StringTokenizer(br.readLine(), " "); array[i][0] = Integer.parseInt(st.nextToken()); array[i][1] = Integer.parseInt(st.nextToken()); } // import StringBuilder StringBuilder sb = new StringBuilder(); // 대소비교가 확실하게 될 때에만 rank를 1씩 올려준다. // 그렇게 한다면 등수가 같은 사람은 자연스럽게 같은 rank 값을 갖게 된다. for(int i = 0; i < people; i++) { int rank = 1; for(int j = 0; j < people; j++) { if(i == j) continue; if(array[i][0] < array[j][0] && array[i][1] < array[j][1]) { rank++; } } sb.append(rank + " "); } // 결과 출력 System.out.println(sb); } }
'알고리즘 연습' 카테고리의 다른 글
[11319번] Count Me In - Java (0) 2022.01.06 [1436번] 영화감독 슘 - Java (0) 2021.11.23 [2750번] 수 정렬하기 -Java (0) 2021.11.19 [1002번] 터렛 - Java (0) 2021.11.19 [2231번] 분해합 - Java (0) 2021.11.18