자료구조와 알고리즘/문제풀기
-
백준 9613 - GCD의 합자료구조와 알고리즘/문제풀기 2023. 4. 10. 22:22
public class Main { public static void main(String[] args) throws Exception { BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int t = Integer.parseInt(br.readLine()); String[] input; while (t-- > 0) { input = br.readLine().split(" "); Long sum = 0L; for (int i = 1; i < input.length; i++) { for (..
-
백준 10872,1676 - 팩토리얼, 팩토리얼 0의 개수자료구조와 알고리즘/문제풀기 2023. 4. 10. 22:19
팩토리얼 public class Main { public static void main(String[] args) throws Exception { BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //스캐너보다 성능 나음 int t = Integer.parseInt(br.readLine()); Long a = fac(t); bw.write(a+""); bw.flush(); bw.close(); } private static Long fac(int t) { if(t ==0) return 1..
-
백준 6588 - 골드바흐의 추측자료구조와 알고리즘/문제풀기 2023. 4. 10. 21:57
-해결방법 1. 숫자 N을 입력 받고 N이하의 소수 중에서 만족하는 숫자를 찾는다 2 만족하는 숫자를 찾는 방법 2.1 2중 for문을 돌면서 전부 비교하기 - N이하의 소수 중 가장 작은 소수와 가장 큰 소수를 더 해본다. -true -> a+b를 출력하고 break -false -> 다음으로 큰 소수를 ..그 다음 소수 반복 그래도 찾지 못하면, 그다음 작은 소수와 가장 큰 소수를 더 해본다. int[] primeNumber // 2~M 이하의 소수를 담은 배열 for(int i=0; i=i; j--){ if(m - primeNumber[0] - primeNumber[j] == 0){ System.out.println(//); break; } } } 이를 모든 테스트 케이스에서 반복하면 될 수 있다...
-
백준 1929번 - 소수 구하기자료구조와 알고리즘/문제풀기 2023. 4. 10. 19:46
M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하면 된다. public class Main{ public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] input = br.readLine().split(" "); int m = Integer.valueOf(input[0]); int n = Integer.valueOf(input[1]); boolean[] isPrime = new boolean[n + 1]; isPrime[0]=isPrime[1]=true; for (int i = 2; i
-
백준 1978 - 소수 찾기자료구조와 알고리즘/문제풀기 2023. 4. 10. 19:11
주어진 N개의 수 중에서 소수가 몇 개인지 찾아서 출력하는 문제이다. public class Main{ public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int size = Integer.parseInt(br.readLine()); String[] input = br.readLine().split(" "); int n; int counter=0; for (int i = 0; i < siz..
-
백준 2609,1934 - 최대공약수와 최소공배수,최소공배수자료구조와 알고리즘/문제풀기 2023. 4. 10. 18:36
두 개의 자연수를 입력받아 최대 공약수와 최소 공배수 출력하는 것 2609 최대공약수 최소공배수 public class Main{ public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); String[] input =br.readLine().split(" "); int a = Integer.parseInt(input[0]); int b = Integer.parseInt((input[1])); in..
-
백준 10430 - 나머지자료구조와 알고리즘/문제풀기 2023. 4. 10. 15:34
public class Main{ public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); String[] input =br.readLine().split(" "); int[] arr = new int[input.length]; for(int i=0; i +m한번 해주면 양수로만 나옴 *C(JAVA)와 python 나머지 구하는 방식 차이 c와 java는 나머지를 버림, python은 내림을 이..
-
백준 10799 - 쇠막대기자료구조와 알고리즘/문제풀기 2023. 4. 5. 13:43
올바른 괄호문제를 응용한 문제이다. 해결방법 - (하나당 쇠막대기 1개로 간주 스택에 push() - )닫는괄호 등장시 - 바로 인접한 여는 괄호 존재시 -->레이저로 간주 총 길이에 스택의 사이즈(총 쇠막대기)만큼 + (2등분 되므로 기존 쇠막대기 만큼 +됨) - 인접한 여는 괄호가 없을 시 -->쇠막대기 끝을 의미 쇠막대기 하나 없어짐 -->>바로 인접한 여는괄호인지 아닌지를 판단하는게 중요하다. 풀이 1 public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWri..