4차산업혁명의 일꾼/Java&Spring웹개발과 서버 컴퓨터

Java 코딩테스트

르무엘 2023. 4. 17. 13:51

패스트캠퍼스 - 핵심유형 20개로 한 번에 끝내는 알고리즘 코딩테스트 with Java 초격차 패키지 Online.

 

Ch 01. 문자열

 

[백준 온라인 코딩테스트 활용]

https://www.acmicpc.net/

 

Baekjoon Online Judge

Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.

www.acmicpc.net

[잘쓰는 메소드 정리]

charAt(int)   - index 번째 문자

compareTo(String) - 두 문자열을 사전순으로 비교한 결과

 

[아스키 테이블]

X는 88이라는 정수값

아스키 0~127번

0~9은 48~57 , A~ Z는 65~90, a~z는 97~122

 

ASCII Table - 아스키 코드표 (tistory.com)

 

ASCII Table - 아스키 코드표

(아스키코드를 알면 C/C++이나 Java 등으로 문자열 함수를 다루거나 파일 함수를 다룰때 도움이 됩니다.) 컴퓨터는 0과 1 숫자 밖에 모르기 때문에 문자도 숫자로 기억합니다. 이때, 어떤 숫자와 어

shaeod.tistory.com

https://www.acmicpc.net/problem/2744

 

2744번: 대소문자 바꾸기

영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

 

 

https://www.acmicpc.net/problem/1919

 

1919번: 애너그램 만들기

두 영어 단어가 철자의 순서를 뒤바꾸어 같아질 수 있을 때, 그러한 두 단어를 서로 애너그램 관계에 있다고 한다. 예를 들면 occurs 라는 영어 단어와 succor 는 서로 애너그램 관계에 있는데, occurs

www.acmicpc.net

 

import java.util.Scanner;

public class Main {

    // 각 알파벳 26개 갯수를 각각의 배열에 담음
    public static int[] getAlphabetCount(String str){
        //  알파벳 26
        int[] arr = new int[26];
        for(int i=0; i<str.length(); i++){
            arr[str.charAt(i)-'a']++;
        }
        return arr;
    }


    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String  a= sc.next();
        String  b= sc.next();

        // 입력한 알파벳 비교
        int[] arr1 = getAlphabetCount(a);
        int[] arr2 = getAlphabetCount(b);

        // 알파벳 개수 비교(같은 갯수 알파벳이면 0)
        int ans = 0;
        for(int i=0; i<26; i++)
            ans += Math.abs(arr1[i] - arr2[i]);
        System.out.println(ans);

    }

}

 

https://www.acmicpc.net/problem/1543

 

1543번: 문서 검색

세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한

www.acmicpc.net

 

 

https://www.acmicpc.net/problem/13223

 

13223번: 소금 폭탄

첫째 줄에는 현재 시각이 hh:mm:ss로 주어진다. 시간의 경우 0≤h≤23 이며, 분과 초는 각각 0≤m≤59, 0≤s≤59 이다. 두 번째 줄에는 소금 투하의 시간이 hh:mm:ss로 주어진다.

www.acmicpc.net

 

자 여기서 선생님이 내주신 과제를 해야겠다.~!

하기 문제 탭에 있는 단계별로 풀어보기에 들어가보자

 

 

하기와 같이 단계가 올라가면서 쭈욱 나온다 여기서 최소 5단계 문자열까지는 마치고나서

이어서 강의를 들으라고 하신다.

자 그러니 열심히 5단계 까지 들어보자

 

 

 

 

 

LIST