본문 바로가기

전체 글

(371)
[SWEA 1959][D2][JAVA] 두 개의 숫자열 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpoFaAS4DFAUq&categoryId=AV5PpoFaAS4DFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 방법] N이 M보다 작은 경우 / 같을 경우 / 큰 경우를 나누어 최대값을 구했습니다. A배열의 첫번째 인덱스를 기준으로 B 배열의 양 끝까지 움직이면서 최대값을 구하면 되므로, 총 M-N번 반복하여 A[1] 인덱스가 최대한 많은 B인덱스에 대입될 수 있도록 합니다. (M==5 이고 N==3 일..
[SWEA 1962][D2][JAVA] 숫자 배열 회전 [문제] https://swexpertacademy.com/main/code/problem/problemSolver.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이방법] 90도 / 180도 / 270도를 회전 1,1 1,2 1,3 2.1 2.2 2.3 3.1 3.2 3.3 90도 회전 한 결과 3.1 2.1 1.1 3.2 2.2 1.2 3.3 2.3 1.3 180도 회전한 결과 == 90도 회전한 결과+ 90도 회전 3.3 3.2 3.1 2.3 2.2 2.1 1.3 1.2 1.1 270도 회전 == 180도 회전한 결과 + 90도 회전 1.3 2.3 3.3 1.2 2.2 3.2 1.1 2.1..
HashMap 정렬 Collections.sort 를 이용한다. 고유 인덱스를 유지하면서 정렬을 하고 싶을 때 사용한다. DB관리 할 때 사용할 수 있다. HashMap hash= new HashMap(); ...hash.put(0, 1); Iterator it = sortHash(hash) //정렬된 결과를 탐색할 수 있도록 iterator를 반환한다. List sortHash(final Map map) { List list = new ArrayList(); list.addAll(map.keySet()); Collections.sort(list, new Comparator() { @override public int compare(Object o1, Objecct o2) { Object v1 = list.get(o1); ..
Java에서 HexString 값을 int로 변경 Integer클래스가 제공하는 기능 1. hexString to int int n = Integer.parseInt( 'A', 16 ); 2. int to hexString String hex = Integer.toHexString(10); 3. String to hexString String str = "Jay" System.out.println(stringToHex(str)) public static String stringToHex(String s) { String result = ""; for (int i = 0; i < s.length(); i++) { result += String.format("%02X ", (int) s.charAt(i)); } return result; }
[SWEA 1974][D2][JAVA] 스도쿠 검증 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Psz16AYEDFAUq&categoryId=AV5Psz16AYEDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이방법] 가로 / 세로 / 3*3 중 하나라도 조건(1-9 중 하나의 숫자만 존재해야한다)이 맞지 않으면 그대로 검증을 끝내고 다음 스도쿠 검증으로 넘어갑니다. 일단 1~9 까지의 숫자가 이전에 있었는지 확인하기 위해 boolean 배열을 생성했습니다. 7 3 6 4 2 9 5 8 1 5 8 9 1..
[SWEA 1970][D2][JAVA] 쉬운 거스름돈 [문제] https://swexpertacademy.com/main/code/problem/problemSolver.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이방법] 동전들의 가치를 정수형 배열에 저장한 후, N(거스름돈 총합) / 각 코인의 가치까지 감소시킵니다. 감소시킬 때마다 각 종류의 돈이 쓰이는 개수를 구해야 하기 때문에 따로 생성한 정수형 배열의 해당 순서의 코인 개수를 증가합니다. (dp = 각 코인이 쓰인 개수를 저장하는 정수형 배열) 처음에 거스름돈이 주어진 코인의 가치보다 작을 때만 계산을 해야하기 때문에 코인이 거스름돈보다 클 경우에는 다음 코인으로 넘어가도록했습니다...
[SWEA 1979][D2][JAVA] 어디에 단어가 들어갈 수 있을까 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PuPq6AaQDFAUq&categoryId=AV5PuPq6AaQDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이방법] 쉽게 생각하면 가로 / 세로 나누어서 길이가 3이 되는 부분의 카운트를 가져오는 연산으로 해결할 수 있고, 저처럼 처음에 DFS에서 허덕이고 있다면 문제 푸는 시간이 길어질 수 있습니다. DFS로 할 경우 Depth가 3일 때 빠져나오는 건 좋지만 3이 되는 기준 지점을 찾기가 애매한 문제..
[SWEA 1976][D2][JAVA] 시각덧셈 [문제] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PttaaAZIDFAUq&categoryId=AV5PttaaAZIDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이방법] 시간과 분을 순서대로 입력받아서 시간1 + 시간2 > 12 이면 [시간1 + 시간 - 12] 를 해서 저장하고, 분1 + 분2 >= 60 이면 [분1 + 분2 - 60] 을 하고 [시간 + 1]을 연산합니다. int H, M; if (H1 + H2