SWEA 63

swea 13428 [D3] 숫자 조작 JAVA

구현 문제 풀이 : 구현 문제 -> 문자 배열을 사용해서 min, max를 구한다. 시작이 0으로 시작되면 안되고, 이럴 경우는 본래가 min, max가 됨. Code public class Solution13428 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int tc = 1; tc max) { max = Integer.parseInt(String.valueOf(arr)); } temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } System.out.println("#" + tc + " " + min + " " + ma..

SWEA 2023.12.04

swea 11315 [D3] 오목 판정 JAVA

Simulation(시뮬레이션) 문제 풀이 : dx, dy, dir 사용 처음부터 끝까지 확인할거기 때문에 8방향 말고, 하, 우, 좌하, 우하 만 확인했음. Code public class Solution11315v { static char[][] board; static int N; static int[][] v = {{0, 1}, {1, -1}, {1, 0}, {1, 1}}; // i,j 기준 -> 우, 좌하, 하, 우하 public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int tc = 1; tc = 0 && dx = 0 && dy < N &&..

SWEA 2023.12.04

swea 9280 [D3] 진용이네 주차타워 JAVA

풀이 : queue랑 우선순위 queue를 사용 -> 대기 차량을 위한 waitQueue, 주차권을 발급해주는 emptyQueue(우선 순위 큐), parkingArr에 각 자동차별 주차 공간 입력 풀이2 : 대기열 우선 고려, 배열을 더 사용 풀이3 : 배열들이랑 일반 진입 큐(q), 대기열 큐(rq) 사용 Code - 큐와 우선순위 큐 사용 public class Solution9280 { public static void main(String args[]) throws Exception { Scanner sc = new Scanner(System.in); int TC = sc.nextInt(); for(int tc = 1; tc

SWEA 2023.12.04

swea 6808 [D3] 규영이와 인영이의 카드게임 JAVA

풀이 : 인영이가 가질 수 있는 카드 9개를 rem_card[]에 넣어놓고, game()를 활용해서 인영이의 카드(arrB[])에 rem_card를 하나씩 넣음. arrB가 다 차면 arrA랑 비교 dfs를 활용한 문제. 인영이가 가질 수 있는 카드들은 check[1~18]을 활용해서 구함 Code public class Solution6808 { static int[] arrA, arrB; static int[] rem_card; static boolean[] visited; static int win; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int tc ..

SWEA 2023.11.29

swea 6190 [D3] 정곤이의 단조 증가하는 수 JAVA

풀이 : 이중 for문 j= i + 1로 해서 arr[i] * arr[j] 를 isIncreasing(단조 증가인지 확인) 함수 호출에 사용해서 단조 증가하는 수면 max 갱신 Code public class Solution { static int N; static int max; static int[] arr; static StringBuffer sb = new StringBuffer(); public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int tc = 1; tc (s.charAt(i + 1) - '0')) { //앞의 수가 더 크면 ..

SWEA 2023.11.29

swea 5948 [D3] 새샘이의 7-3-5 게임 JAVA

풀이 : dfs를 사용. set을 이용해서 중복을 제거해야함. 중복 때문에 7 Conbination 3 = 35 중에서 5번째로 큰 수라고 30번째를 구하면 안됨 때문에, set을 arr 또는 arrayList로 만들고 arrayList.size - 5 또는 arr.length - 5 를 구해야 함 Code - TreeSet 사용 public class Solution5948 { static int[] arr; static int sum; static TreeSet set; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int tc = 1; tc

SWEA 2023.11.29

swea 5215 [D3] 햄버거 다이어트 JAVA

제한된 칼로리 조건 하에서 가장 만족도 높은 조합을 선택하면 되는 문제 풀이 : 부분 집합 -> 재귀 함수 탐색을 하면서 만족도와 현재까지의 칼로리를 계속 기록하며 선택한 경우 --> 해당 항목의 만족도와 칼로리를 더해준 뒤 진행하고 선택하지 않은 경우 --> 기존의 상태에서 다음 번째 항목으로 넘겨주는 위 과정만 이해하신다면 유사한 문제들을 쉽게 풀이 Code public class Solution5215 { static int N, L; static int[] scores; static int[] cal; static int ans; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextI..

SWEA 2023.11.29