diff --git a/chohanvien/10989.java b/chohanvien/10989.java new file mode 100644 index 0000000..0329008 --- /dev/null +++ b/chohanvien/10989.java @@ -0,0 +1,21 @@ +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.Arrays; + +public class j_10989 { + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + + int N = Integer.parseInt(br.readLine()); + Integer[] arr = new Integer[N]; + + for (int i = 0; i < N; i++) { + arr[i] = Integer.parseInt(br.readLine()); + } + + Arrays.sort(arr); + for(int x : arr) + System.out.println(x); + } +} diff --git a/chohanvien/1260.java b/chohanvien/1260.java new file mode 100644 index 0000000..bed4f99 --- /dev/null +++ b/chohanvien/1260.java @@ -0,0 +1,74 @@ +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.*; + +public class j_1260_y { + + static int N, M, V; + static int[][] Graph; + static boolean[] visited; + + + // 재귀함수로 구현한 DFS + static void dfs(int node) { + visited[node] = true; // 현재 노드를 방문했다고 표시 + System.out.print(node + " "); // 현재 노드 출력 + + // 인접 노드를 순회 + for(int next = 0; next <= N; ++next ) { + // 아직 방문하지 않은 노드이며, 간선이 존재한다면 + if(!visited[next] && Graph[node][next] != 0 ) { + dfs(next); // 해당 노드로 DFS 진행 + } + } + } + + //BFS + static void bfs(int start) { + Queue queue = new LinkedList<>(); + + queue.offer(start); + visited[start] = true; + + while(!queue.isEmpty()) { + int node = queue.poll(); + System.out.print(node + " "); + + for(int next = 1; next <= N; ++next) { + if(!visited[next] && Graph[node][next] != 0 ) { + visited[next] = true; + queue.offer(next); + } + } + } + } + + public static void main(String[] args) throws IOException { + // 1. 입력 받기 + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine()); + + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + V = Integer.parseInt(st.nextToken()); + + Graph = new int[N+1][N+1]; + visited = new boolean[N+1]; + + // 2. 간선 정보를 저장 + for (int i = 0; i = 1; i--) { + // 해당 상담이 끝나는 날 + int nextDay = i + T[i]; + + // 퇴사 전까지 상담 가능하면 + if (nextDay <= N + 1) { + dp[i] = Math.max(P[i] + dp[nextDay], dp[i + 1]); + // 상담을 할 수 없음 + } else { + dp[i] = dp[i + 1]; + } + } + // 최대 수익 + System.out.println(dp[1]); + } +} diff --git a/chohanvien/3273.java b/chohanvien/3273.java new file mode 100644 index 0000000..2bf5da3 --- /dev/null +++ b/chohanvien/3273.java @@ -0,0 +1,27 @@ +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.HashSet; + +public class j_3273 { + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + + int n = Integer.parseInt(br.readLine()); + String[] input = br.readLine().split(" "); + int x = Integer.parseInt(br.readLine()); + + HashSet set = new HashSet<>(); + int get = 0; + + for (String num : input) { + int val = Integer.parseInt(num); + if (set.contains(x - val)) { + get++; + } + set.add(val); + } + + System.out.println(get); + } +}