분류 전체보기

    Intellij - 롬북(lombok) 사용을 위한 설정

    1. 롬북 의존성을 받아 줍니다. 2. 윈도우 기준 File - Settings 로 이동하여 plugins를 검색 해줍니다. 3. lombok을 검색하여 플러그인을 설치 하고 재부팅 해줍니다. 4. Annotation Processors를 검색해줍니다. Enable annotation processing 를 체크 해줍니다.

    문자열 압축 알고리즘 - 자바 .with 주의사항

    문제 문자열 압축입니다. QQQLLLLEEWQ 라는 문자가 들어오면 Q3L4E2WQ 라는 결과 값이 나와야 합니다. 소스 코드 import java.util.*; class Main { public static void main(String args[]) { Scanner sc = new Scanner(System.in); String s = sc.next() + " "; String result = ""; int cnt = 1; for(int i=0; i 1){ result += Integer.toString(cnt); } cnt = 1; } } System.out.println(result); } } 해설 문자열 길이 만큼 반복합니다. 문자의 개수를 카운트 하기 위한 변수 cnt를 선언합니다. cnt..

    가장 짧은 문자의 거리 값 찾는 알고리즘 - 자바

    문제 testcase e 라고 문자열이 주어지고 문자열 길이가 100을 넘지 않는다면, 문자열 testcase에 대해 각 문자들이 e라는 문자에 얼마나 거리가 있는지 체크하는 문제입니다. 1 0 1 2 3 2 1 0 의 결과 값이 나와야 합니다. 정답 소스 import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); String s = sc.next(); char[] c = s.toCharArray(); int result[] = new int[s.length()]; char target = sc.next().charAt(0); int targetIndex ..

    스프링의 의존성 주입 - 기초

    Member를 생성하는 MemberService 가 있고 이를 구현하는 구현체 MemberServiceImpl 이 있습니다. Member를 DB에 저장하는 MemberRepository가 있고 이를 구현하는 구현체 MemberRepositoryImpl 이 있습니다. 이 때, MemberService는 MemberRepository를 의존하고 있습니다. MemberRepositoryImpl 를 사용하기 위해서는 이렇게 new로 생성하게 됩니다. 그런데 먄약, MemberRepositoryImpl 가 아니고, 다른 MemberRepositoryImpl2 를 사용하게 된다고 합시다. 그러면 우린 MemberServiceImpl에 있는 코드를 이렇게 바꾸게 될 것입니다. 이것은 구현체에서 직접 수정하는 것으로 ..

    자바 문자열 뒤집어서 출력하기

    n개의 문자열이 입력되고 그 문자열을 거꾸로 출력한다는 문제가 있습니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); StringBuilder sb = new StringBuilder(); for(int i=0; i

    백준 1181번 단어 정렬 - 자바 스트림 활용

    https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 첫 번째 줄에 n개의 단어를 나타내는 수가 있습니다. 그 수 만큼 단어가 나옵니다. 정렬의 조건은 두 가지 입니다. 1. 길이가 짧은 순서대로 2. 같은 길이는 사전 순서대로 그렇게 정렬해서 출력해주면 됩니다. * 여기서 같은 단어는 하나만 출력하면 됩니다. 해설 코드 import java.util.Comparator; import java.util.HashSet; import java..

    백준 1427번 소트인사이드 - 자바

    https://www.acmicpc.net/problem/1427 난이도는 실버5 로 측정되어 있지만 자바에서 제공하는 라이브러리를 활용하면 아주 쉬운 문제이다. 전체 코드 입력은 Scanner로 받았으며, 입력된 n이라는 숫자의 길이를 쉽게 알아내기 위해 String으로 받았습니다. n의 길이만큼의 Integer 배열을 만들어서 각자리의 숫자들을 하나씩 넣습니다. 그리고 Arrays.sort를 활용해 정렬하는데, 이때 두 번째 인자로 Collections.reverseOrder()를 사용해 내림차순으로 정렬해줍니다. 스캐너를 만들어줍니다. 스캐너로 입력을 받는데, String으로 입력받습니다. Integer형 배열을 선언하고, 입력받은 n에 길이만큼 만들어 줍니다. 만들어진 배열 result만큼 반복하..

    백준 11719번 그대로 출력하기 2 - 자바

    https://www.acmicpc.net/problem/11719 11719번: 그대로 출력하기 2 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 www.acmicpc.net 그대로 출력하기 첫 번째와 다른 것은 빈 줄이 주어질 수도 있고, 각줄의 앞 뒤에 공백이 있을 수도 있다. 라는 것입니다. 그 외에는 똑같습니다. 스캐너를 이용해 입력을 받았고, 공백도 문자열로 받기 위해서 nextLine()으로 받았습니다. while 반복문으로 무한반복을 만들어 입력받은 것을 그대로 출력해주었고, 무한반복을 빠져나가기 위한 if문으로 hasNext()가 f..