99클럽 코테 스터디 2일차 TIL - 백준 14495번 : 피보나치 비스무리한 수열
백준/DP (동적계획법)2025. 4. 2. 01:0499클럽 코테 스터디 2일차 TIL - 백준 14495번 : 피보나치 비스무리한 수열

항해99 클럽 코테 스터디 2일차 TIL - 자바 미들러 4/1 (화요일)https://www.acmicpc.net/problem/14495✅ 문제📌  접근방법처음엔 막연히 재귀함수를 이용하였지만 시간복잡도가 O(2^N)이라 시간 초과로 런타임 오류가 났다.이를 해결하려면 메모이제이션(DP) 또는 반복문을 사용한 동적 계획법을 사용해야한다. -> O(N)또한, 문제조건에서 n이 116까지 입력받는데 f(116)은 int의 범위를 넘기 때문에 long을 써야했다. 런타임 오류 (오답)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public stati..

99클럽 코테 스터디 1일차 TIL - 백준 1929번 : 소수 구하기
백준2025. 3. 31. 18:5999클럽 코테 스터디 1일차 TIL - 백준 1929번 : 소수 구하기

항해99 클럽 코테 스터디 TIL - 자바 미들러 (3/30(월) ~ 4/28(월)) 시작!https://www.acmicpc.net/problem/1929✅ 문제📌  접근방법일반적인 소수 판별법으로 소수는 자기자신과 1만을 약수로 가지는 수이다.n미만의 숫자 중에서 나머지 연산을 했을 때 0이 되면 약수를 가져서 소수가 아니다.public class Algorithm { static boolean isPrime(int n){ // 시간복잡도 O(N) if(n위 코드의 시간복잡도는 O(N)이며, N개의 수를 판별하면 O(N^2)이 된다.시간이 상당히 오래걸리므로 에라토스테네스의 체로 접근했다. 에라토스테네스의 체는 많은 수의 소수판별을 할 때 유용하다.이 알고리즘의 원리는 해당 숫자가..

[누적합] 백준 2167번 : 2차원 배열의 합 - Java
백준2025. 3. 30. 19:21[누적합] 백준 2167번 : 2차원 배열의 합 - Java

https://www.acmicpc.net/problem/2167[접근 방법]누적합, DP  🔑 풀이public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); // 배열 크기에 대한 입력 int N = Integer.parseInt(st.nextToken()); // 행 int M = Integer.parseInt(st.n..

백준 7785번 : 회사에 있는 사람 - Java
백준2025. 3. 28. 11:06백준 7785번 : 회사에 있는 사람 - Java

https://www.acmicpc.net/problem/7785 [접근 방법]처음에 예제를 보고 map을 활용할 생각을 하였다.HashMap key값에 이름들을 넣고 만약에 key 값이 한 번 더 나온다 하면 그 key값을 HashMap에서 삭제하였다.여기서 굳이 value값으로 비교할 필요가 없는 게 만약 동일한 key값이 두 번 나왔으면해당 key값인 사람은 무조건 enter 후 leave이므로 key값 포함 여부만 확인하면 된다.그러고 나서 ArrayList에 넣어서 사전 순의 역순으로 정렬을 해주고 출력을 하였다.+ Set 활용도 가능! [풀이]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamRe..

image