본문 바로가기

분류 전체보기

(144)
백준 10866 자바 백준 Deque 관련 문제이고 stack, queue의 기본 문제들과 비슷합니다.import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ArrayDeque dq = new ArrayDeque(); StringBuilder sb = new StringBuilder(); int N = Integer.parseInt(br.readLine()); for (int i..
백준 1940 자바 백준 정렬 문제이고 두 포인터를 사용해야 합니다. 배열을 오름차순으로 정렬한 뒤에 배열의 처음 인덱스, 끝 인덱스를 가지고 움직이면서 원하는 합이 되면 cnt를 1 올리는 방식입니다. 1. 큰 틀은 두 원소의 합이 M보다 작을 때 클 때 같을 때로 나눕니다. 2. M보다 작다면 start를 1 올려서 작은 수부터 그 다음 원소로 올라가게 합니다. 3. M보다 크다면 end를 1 낮춰서 큰 수부터 그 아래 원소로 내려가게 합니다. 4. 그 밖의 경우라면 같다는 뜻이니 cnt를 1 올리고 start는 올리고 end는 낮춥니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throw..
백준 7785 자바 백준 HashSet관련 문제인데 전 사전순 역순 출력때문에 TreeSet으로 풀어보았습니다. 1.Stringbuilder 사용 import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(br.readLine()); StringBuilder sb = new StringBuilder(); TreeSet treeSet = new TreeSet(Collections.reverseOrder..
백준 18294 자바 백준 HashMap 문제입니다. 영어로 되어있지만 그렇게 어렵진 않고 해석해보면 1. N만큼 입력 받기 2. 가장 많이 나온 동물 이름을 출력하기 만약 가장 많이 나온 동물이 2마리 이상이면 NONE 출력하기 입니다. HashMap에 넣는 건 그렇다 쳐도 출력을 어떻게 하느냐가 좀 걸렸는데 N의 반을 넘어야 한 마리가 출력이 되기 때문에 마지막에 삼항연산자를 통해 출력을 했습니다. import java.io.*; import java.util.*; public class unknown { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(S..
백준 20291 자바 백준 문제입니다. Hash를 이용해 풀 수도 있지만 전 TreeSet을 이용해서 풀었습니다. 이유는 문제 출력 조건에 보면 사전순으로 출력을 하라고 했기 때문에 자동으로 정렬이 되는 TreeMap을 사용했습니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(br.readLine()); TreeMap treeMap = new TreeMap(); for (int i = ..
백준 10867 자바 백준 HashSet 문제입니다. 문제 이름부터 HashSet을 사용한다면 금방 풀 수 있다는 것을 알 수 있습니다. 그러나 HashSet을 정렬하는 법을 모른다면 분명 막히는 문제입니다. HashSet을 정렬하기 위해서는 ArrayList를 이용하면 됩니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); HashSet hashSet = ne..
백준 25192 자바 ENTER 가 들어오면 똑같은 사람이 다시 채팅을 친 것이 인사로 간주되어서 cnt를 1 올려야 합니다. 그래서 ENTER가 들어오면 HashSet을 새로 만드는 것입니다. 그리고 if문 아래에 if문이기 때문에 두 개가 차례대로 다 수행이 됩니다. 참고로 int cnt = 0; 으로 while문 위에다가 써놨기 때문에 HahSet을 만드는 거와 cnt는 별개입니다. 이어서 카운트가 됩니다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReade..
백준 17608 자바 백준 Stack 문제입니다. 풀이는 두 개로 풀어봤습니다.난이도는 어렵지 않지만 한 가지 주의할 것이 있다면 맨 오른쪽 막대기는 무조건 보이기 때문에 cnt를 1로 설정을 하고 시작해야 합니다.import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); Stack stack = new Stack(); i..

반응형