2750번 수 정렬하기
문제
풀이
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for(int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
Arrays.sort(arr);
for(int i = 0; i < n; i++) {
System.out.println(arr[i]);
}
sc.close();
}
}
2751번 수 정렬하기2
문제
풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine());
ArrayList<Integer> list = new ArrayList<>();
for(int i = 0; i < n; i++) {
list.add(Integer.parseInt(br.readLine()));
}
Collections.sort(list);
for(int a : list) {
sb.append(a).append('\n');
}
System.out.println(sb);
}
}
10989번 수 정렬하기3
문제
풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine());
int[] arr = new int[10001];
for(int i = 0; i < n; i++) {
arr[Integer.parseInt(br.readLine())]++;
}
for(int i = 0; i < arr.length; i++) {
for(int j = 0; j < arr[i]; j++) {
sb.append(i).append('\n');
}
}
System.out.println(sb);
}
}
25305번 커트라인
문제
풀이
import java.util.*;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
Integer arr[]=new Integer[n];
for(int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
Arrays.sort(arr, Collections.reverseOrder());
System.out.println(arr[m - 1]);
sc.close();
}
}
2108번 통계학
문제
풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[8001];
int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;
int sum = 0;
int med = 10000;
int mod = 10000;
for(int i = 0; i < n; i++) {
int a = sc.nextInt();
sum += a;
arr[a + 4000]++;
if(a > max) {
max = a;
}
if(a < min) {
min = a;
}
}
int cnt = 0;
int modMax = 0;
boolean flag = false;
for(int i = min + 4000; i <= max + 4000; i++) {
if(arr[i] > 0) {
if(cnt < (n + 1)/ 2) {
cnt += arr[i];
med = i - 4000;
}
if(modMax < arr[i]) {
modMax = arr[i];
mod = i - 4000;
flag = true;
} else if(modMax == arr[i] && flag == true) {
mod = i - 4000;
flag = false;
}
}
}
System.out.println((int) Math.round((double) sum / n));
System.out.println(med);
System.out.println(mod);
System.out.println(max - min);
sc.close();
}
}
1427번 소트인사이드
문제
풀이
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
int a = sc.nextInt();
ArrayList<Integer> arr = new ArrayList<>();
int rem;
do {
rem = a % 10;
a = a / 10;
arr.add(rem);
}
while (a > 0);
Collections.sort(arr, Comparator.reverseOrder());
for(int n : arr) {
System.out.print(n);
}
sc.close();
}
}
11650번 좌표 정렬하기
문제
풀이
import java.util.*;
class Point implements Comparable<Point> {
public int x, y;
Point(int x, int y) {
this.x = x;
this.y = y;
}
@Override
public int compareTo(Point o) {
if(this.x == o.x) {
return this.y - o.y;
}
return this.x - o.x;
}
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
ArrayList<Point> arr = new ArrayList<Point>();
for(int i = 0; i < n; i++) {
int x = sc.nextInt();
int y = sc.nextInt();
arr.add(new Point(x, y));
}
Collections.sort(arr);
for(Point p : arr) {
System.out.println(p.x + " " + p.y);
}
sc.close();
}
}
11651번 좌표 정렬하기2
문제
풀이
import java.util.*;
class Point implements Comparable<Point> {
public int x, y;
Point(int x, int y) {
this.x = x;
this.y = y;
}
@Override
public int compareTo(Point o) {
if(this.y == o.y) {
return this.x - o.x;
}
return this.y - o.y;
}
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
ArrayList<Point> arr = new ArrayList<Point>();
for(int i = 0; i < n; i++) {
int x = sc.nextInt();
int y = sc.nextInt();
arr.add(new Point(x, y));
}
Collections.sort(arr);
for(Point p : arr) {
System.out.println(p.x + " " + p.y);
}
sc.close();
}
}
1181번 단어 정렬
문제
풀이
import java.util.Scanner;
import java.util.Arrays;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
String[] arr = new String[n];
sc.nextLine();
for (int i = 0; i < n; i++) {
arr[i] = sc.nextLine();
}
Arrays.sort(arr, new Comparator<String>() {
public int compare(String s1, String s2) {
if (s1.length() == s2.length()) {
return s1.compareTo(s2);
} else {
return s1.length() - s2.length();
}
}
});
System.out.println(arr[0]);
for (int i = 1; i < n; i++) {
if (!arr[i].equals(arr[i - 1])) {
System.out.println(arr[i]);
}
}
sc.close();
}
}
10814번 나이순 정렬
문제
풀이
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
Map<Integer, String> map = new HashMap<>();
String[][] arr = new String[n][2];
for (int i = 0; i < n ; i++) {
arr[i][0] = sc.next();
arr[i][1] = sc.next();
}
Arrays.sort(arr, new Comparator<String[]>() {
@Override
public int compare(String[] o1, String[] o2) {
return Integer.compare(Integer.parseInt(o1[0]), Integer.parseInt(o2[0]));
}
});
for (int i = 0; i < n ; i++) {
System.out.println(arr[i][0] +" " + arr[i][1]);
}
sc.close();
}
}
18870번 좌표 압축
문제
풀이
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
int[] sarr = new int[n];
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
for(int i = 0; i < n; i++) {
sarr[i] = arr[i] = sc.nextInt();
}
Arrays.sort(sarr);
int r = 0;
for(int a : sarr) {
if(!map.containsKey(a)) {
map.put(a, r);
r++;
}
}
StringBuilder sb = new StringBuilder();
for(int a : arr) {
int rank = map.get(a);
sb.append(rank).append(' ');
}
System.out.println(sb);
sc.close();
}
}