반응형

카테고리 189

[백준] 2660 : 회장 뽑기 (JAVA)

https://www.acmicpc.net/problem/2660 [풀이과정]문제 이해가 힘들었다. 그래프로 바꿔 생각하면직접 친구 = 거리 1친구의 친구 = 거리 2이런 식이었다.각각의 후보(노드)는 가장 먼 친구의 점수(거리)이고회장은 그 중 점수가 가장 작은 후보이다.이때 같은 점수를 가진 모든 후보를 출력해야 했음. 모든 정점 쌍 간의 최단 거리를 구해야 했기 때문에 플로이드 와샬 알고리즘을 사용했다. [코드]import java.io.*;import java.util.StringTokenizer;/*각 회원은 다른 회원들과 가까운 정도에 따라 점수를 받게 됨.다른 모든 회원과 친구이면 1점다른 모든 회원과 친구 || 친구의 친구이면 2점다른 모든 회원과 친구 || 친구의 친구 ||친구의 친구의 ..

[백준] 2467 : 용액 (JAVA)

https://www.acmicpc.net/problem/2467 [풀이과정]투포인터로 풀었다.0과 가까운 값을 갱신하는 것과 포인터 위치를 변경하는 것의 조건을 각기 다르게 둬야 했는데, 한 번에 처리해서 틀렸다. [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;/*산성 용액 특성값 1 ~ 10억알칼리성 용액 특성값 -10억 ~ -1두 용액을 혼합하여 0에 가장 가까운 용액 만들기 */public class Main { static BufferedReader br = new Bu..

백준/투포인터 2024.11.09

[백준] 1240 : 노드 사이의 거리 (JAVA)

https://www.acmicpc.net/problem/1240 [풀이과정]BFS로 풀었다. [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Queue;import java.util.StringTokenizer;/*N개의 노드로 이루어진 트리M개의 두 노드 쌍을 입력받을 때 두 노드 사이의 거리를 출력 */public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static..

백준/DFS BFS 2024.11.09

[백준] 5052 : 전화번호 목록

https://www.acmicpc.net/problem/5052 [풀이과정]N이 10,000이어서 문자의 길이를 오름차순으로 정렬 후 비교해줬다.처음엔 StringBuilder를 사용하고 subString, equals 메서드를 사용해서 비교를 해줬는데 시간초과가 났다.그래서 고려한 부분은 1. 정렬 기준길이가 아닌 사전순으로 정렬을 했다. 예로 ["123", "1234", "234"] 이렇게 정렬이 되기 때문에, 앞 뒤의 두 문자열만 비교해주면 쉽게 정답을 알 수 있다.-> Arrays.sort는 O(N logN)의 시간복잡도-> 2개씩 비교하므로 총 N-1의 비교 횟수를 가져서 O(N)의 시간복잡도 2. 접두어 확인 로직String의 startsWith메서드를 사용해서 복잡성을 완화했다. 그래서 O..

백준/완전탐색 2024.11.07

[프로그래머스] SELECT : 조건에 맞는 회원수 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/131535 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr [풀이과정]COUNT, AS, DATE_FORMAT, column명 BETWEEN 숫자1 AND 숫자2 [코드]SELECT COUNT(USER_ID) AS USERSFROM USER_INFOWHERE DATE_FORMAT(JOINED, '%Y') = 2021 AND AGE BETWEEN 20 AND 29;

반응형