본문 바로가기

Java29

[코딩테스트/백준 알고리즘] 1107번 : 리모컨 (자바, Java 풀이) 문제 https://www.acmicpc.net/problem/1107 1107번: 리모컨 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 고장난 버튼의 개수 M (0 ≤ M ≤ 10)이 주어진다. 고장난 버튼이 있는 경우에는 셋째 줄에는 고장난 버튼 www.acmicpc.net 문제 설명 문제 풀이 입력값이 100인 경우 class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt();//이동하려는 채널 int channel = 100;//현재 채널 int result = Math.abs(N - channel);//.. 2022. 9. 4.
[코딩테스트/ 백준 알고리즘] 15829번 : Hashing (Java, 자바 풀이) 문제 https://www.acmicpc.net/problem/15829 15829번: Hashing APC에 온 것을 환영한다. 만약 여러분이 학교에서 자료구조를 수강했다면 해시 함수에 대해 배웠을 것이다. 해시 함수란 임의의 길이의 입력을 받아서 고정된 길이의 출력을 내보내는 함수로 정 www.acmicpc.net 문제 설명 문제 풀이 나머지 연산의 분배법칙을 모르면 풀기 까다로운 문제였다. (A * B) % m = (A % m) x (B % m) % m 이게 곱셈에서의 나머지 연산 분배법칙이다. 이 문제는 파이썬이면 아무 생각 없이 풀 수 있는 문제(파이썬은 수 범위가 무한이니까)지만 그 외 언어를 쓴다면 나머지 연산에 작업을 해주어야 한다. 그렇지 않으면 31⁵⁰이라는 엄청난 범위의 수를 담아낼 .. 2022. 8. 4.
[코딩테스트/백준 알고리즘] 1920번 : 수 찾기 (Java, 자바 풀이) 문제 https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 문제 설명 코드 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { Scanner sc = new Scanner(System.in); BufferedWriter bw = new BufferedWrit.. 2022. 8. 4.
[코딩테스트/백준 알고리즘] 10816번 : 숫자 카드 2 (Java, 자바 풀이) 문제 https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 문제 설명 문제 풀이 계수 정렬(카운팅 정렬)을 할 때 사용하는 방법을 사용하기로 했다. 계수 정렬은 정렬할 데이터에 해당 요소가 몇 개씩 있는지 센 후 이를 앞 순서대로 차례대로 써주면 된다. 계수 정렬 예시 ex) 입력 데이터 : {1, 1, 4, 7, 8, 5, 6, 2, 3, 3, 7 ,7 ,9, 10} 1 : 2개 2 : 1개 3 : 2개 4 : 1.. 2022. 8. 3.