백준 11652번 (Silver 4)
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class problem430 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int number = in.nextInt();
Map<Long, Integer> map = new HashMap<>();
int count = 0;
long temp = 0;
for (int i = 0; i < number; i++) {
long num = in.nextLong();
map.put(num, map.getOrDefault(num, 0) + 1);
if (map.get(num) > count) {
count = map.get(num); // 갯수 max값 할당
temp = num;
} else if (map.get(num) == count) {
temp = Math.min(temp, num); // 갯수가 같을경우의 최소값
}
}
System.out.println(temp);
}
}
백준 10845번
import java.util.LinkedList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int number = in.nextInt();
LinkedList<Integer> queue = new LinkedList<>();
StringBuilder output = new StringBuilder();
for (int i = 0; i < number; i++) {
String compare = in.next();
switch (compare) {
case "push":
int num = in.nextInt();
queue.offer(num);
break;
case "pop":
if (queue.isEmpty()) {
output.append("-1\n");
} else {
output.append(queue.poll()).append("\n");
}
break;
case "size":
output.append(queue.size()).append("\n");
break;
case "empty":
if (queue.isEmpty()) {
output.append("1\n");
} else {
output.append("0\n");
}
break;
case "front":
if (queue.isEmpty()) {
output.append("-1\n");
} else {
output.append(queue.peek()).append("\n");
}
break;
case "back":
if (queue.isEmpty()) {
output.append("-1\n");
} else {
// peekLast() : 큐의 가장 뒤에 있는 정수를 출력
output.append(queue.peekLast()).append("\n");
}
break;
}
}
System.out.print(output);
}
}
백준 11656번
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class problem432 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
List<String> list = new ArrayList<>();
String str = in.next();
for (int i = 0; i < str.length(); i++) {
list.add(str.substring(i));
}
Collections.sort(list); // 오름차순
// 결과 출력
for (String result : list) {
System.out.println(result);
}
}
}
백준 1850번
import java.util.Scanner;
public class problem433 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
long num1 = in.nextLong();
long num2 = in.nextLong();
long gcd = gcd(num1, num2);
// 최대공약수 값만큼 1 누적
for (int i = 0; i < gcd; i++) {
sb.append("1");
}
System.out.println(sb.toString());
}
// 최대 공약수
static long gcd(long a, long b) {
if (b == 0) return a;
return gcd(b, a % b);
}
}