Algorithm64 [백준] 1764번-듣보잡-Java [백준] 1764번-듣보잡-Java ❓문제 이번 문제는 두가지 N과, M요소를 입력받아서 요소가 두가지 다 포함하고 있는 요소를 사전 오름차순으로 반환하면 된다. 🖊️풀이법 N요소를 HashSet객체에 담는다. M요소를 순서대로 Set객체에 포함하는지 확인한다. N,M 요소에 모두 다 포함되는 경우 ArrayList에 담는다. ArrayList를 정렬한다. ArrayList의 크기와 요소를 출력한다. 정답 코드 import java.io.*; import java.util.*; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputS.. 2023. 7. 10. [백준] 10815번-숫자 카드-Java [백준] 10815번-숫자 카드 ❓문제 문제는 매우 간단한 편이다. 두가지의 배열을 받아서 1번째 배열이 기준이 되어, 1번째 배열의 요소가 2번째 배열의 요소에 있는 경우 1 아니면 0을 출력하면 된다. 🖊️풀이법 Map을 사용한다면, 굳이 배열의 요소들을 하나하나씩 모두 검사(2중 for문같은)하는 불필요한 로직을 줄일 수 있다. Map은 한쌍의 키와 밸류 값으로 이루어져 있다. key -> 주어진 element , value -> 1로 Map 타입의 map 객체를 하나 생성한다. 두번째 요소들을 기존에 생성된 map 객체의 map.get()메서드로 호출 한 후 value값을 StringBuilder에 담는다. 여기서 만약 없는 키값을 입력할 경우, null로 Value값이 반환되니 null로 반환될.. 2023. 7. 10. [백준] 10989번-수 정렬하기 3-Java 🖊️풀이법 이번 문제는 카운팅 정렬을 사용하였다. 해당 방법이 일반적으로 방법의 카운팅 정렬은 아니지만 카운팅 배열 + 반복문을 통해 풀었다. 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)); StringBuilder sb = new StringBuilder(); int N = Integer.parseInt(br.readLine()); int[] arr = new int[10001]; //문제에서 수의 범위만큼 크기.. 2023. 7. 10. [백준] 1931-회의실 배정-Java ❓문제 N개 만큼의 회의 시간이 주어진다. 회의시간은 시작시간과 끝나는시간으로 주어지며, 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있다. 즉, 회의의 시작시간과 끝나는 시간이 같을 수 있다.(이 경우에는 가능하다.) 입력 첫째 줄에 회의의 수 N(1 ≤ N ≤ 100,000) 가 주어진다. 둘째 줄부터 N+1 줄까지 각 회의의 정보가 주어진다. 시작 시간과 끝나는 시간은 2의 31승 -1보다 작거나 같은 자연수 또는 0이다. 예제 입력 11 1 4 3 5 0 6 5 7 3 8 5 9 6 10 8 11 8 12 2 13 12 14 예제 출력 4 🖊️풀이법 이번 문제는 정렬과 그리디에 대한 개념을 안다면 간단하게 풀 수 있다. 우선, 문제를 풀기전 주의해야할 점은 예제와는 다르게 시작시간과 종료시간.. 2023. 7. 10. [백준] 1735번-분수 합-Java [백준] 1735번-분수 합-Java ❓문제 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두개의 자연수를 받는다. 두 분수를 더한다. 두 분수의 합을 기약분수로 분자와 분모로 출력한다. 🖊️풀이법 최대 공약수를 구할 수 있으면, 간단하게 풀 수 있는 문제이다. 두 분수를 먼저 같은 분모를 일치시켜주고, 해당 분모의 비율만큼 분자를 만들어 준다. 두 분수를 더한다. 두 분수를 최대 공약수로 나눈 후 출력한다. 정답 코드 import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader.. 2023. 7. 9. [백준] 1934번-최소공배수-Java [백준] 1934번-최소공배수-Java ❓문제 테스트 케이스의 개수와 각각의 케이스의 두 자연수를 입력 받아 최소공배수를 구하면된다. 🖊️풀이법 최소공배수를 구하는 방법은 간단하다. 두 자연수의 곱을 최대공약수로 나눠주면, 최소공배수를 얻을 수있다. 테스트 케이스 수를 int타입의 T에 담는다. 최대공약수를 구하는 getGCD를 선언한다. 최소공배수를 구하는 getLCM을 선언한다. 반복문을 통해 테스트 케이스 만큼 요소들을 getLCM메서드를 연산하여 결과를 출력한다. 정답 코드 import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { Buffered.. 2023. 7. 9. 이전 1 2 3 4 5 6 7 8 ··· 11 다음