매일 Algorithm

신재원·2023년 2월 11일
0

Algorithm

목록 보기
34/243

백준 10809번 (문자열)

import java.util.Scanner;

public class problem57 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        String input = in.next();

        int [] array = new int[26];

        // 문자열에 알파벳 26개가 다 없다 가정하고 -1로 초기화
        for (int i = 0; i < array.length; i++) {
            array[i] = -1;
        }

        for (int i = 0; i < input.length(); i++) {
            char inputChar = input.charAt(i);

            // array배열을 -1로 초기화 해놨기때문에, 
            // input 문자열에 입력된 알파벳은 무조건 조건문에 걸린다.
            if(array[inputChar - 'a'] == -1){
                array[inputChar - 'a'] = i;
            }
        }
        for (int result : array) {
            System.out.println(result + "");
        }




    }
}

백준 2675번 (문자열)


import java.util.Scanner;

public class problem58 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int size = in.nextInt();

        for (int i = 0; i < size; i++) {
            int routine = in.nextInt();
            String input = in.next();

            for (int k = 0; k < input.length(); k++) {
                for (int j = 0; j < routine; j++) {
                    // 출력 형태가 AAABBBCCC 임으로, 
                    //charAt(j)가 아닌 input의 k로 해줘야된다
                    System.out.print(input.charAt(k));
                }
            }
            System.out.println();
        }
    }
}

백준 1152번 (문자열)

import java.util.Scanner;

public class problem59 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        String input = in.nextLine();

        int count = 0;

        // 공백의 갯수를 세는 로직
        for (int i = 0; i < input.length(); i++) {
            if (input.charAt(i) == ' ') {
                count++;
            }
        }

        // 문자열 앞 뒤로 공백이있는지 여부


        // 앞뒤로 공백이 없는 경우 
        // I LOVE YOU = 3
        if (input.charAt(0) != ' ' &&
                input.charAt(input.length() - 1) != ' ') {
            count = count + 1;
        }

        // 앞뒤로 공백이 있는경우
        else if (input.charAt(0) == ' ' &&
                input.charAt(input.length() - 1) == ' ') {
            count = count - 1;
        }



        System.out.println(count);
    }
}

백준 5622번 (문자열)

import java.util.Scanner;

public class problem60 {
    public static void main(String[] args) {
        // 간단한 문자열 문제다
        Scanner in = new Scanner(System.in);

        String input = in.nextLine();

        int count = 0;

        for (int i = 0; i < input.length(); i++) {
            switch (input.charAt(i)) {
         // switch 케이스문 이다, charAt 임으로, " "가 아닌 ' ' 로 해줘야된다.
                case 'A': case 'B': case 'C':
                    count += 3;
                    break;
                case 'D': case 'E': case 'F':
                    count += 4;
                    break;

                case 'G': case 'H': case 'I':
                    count += 5;
                    break;

                case 'J': case 'K': case 'L':
                    count += 6;
                    break;

                case 'M': case 'N': case 'O':
                    count += 7;
                    break;

                case 'P': case 'Q': case 'R': case 'S':
                    count += 8;
                    break;

                case 'T': case 'U': case 'V':
                    count += 9;
                    break;

                case 'W': case 'X': case 'Y': case 'Z':
                    count += 10;
                    break;
            }
        }
        System.out.println(count);


    }
}

백준 2292번 (수학1)


import java.util.Scanner;

public class problem61 {
    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);
        int bee = in.nextInt();
        int count = 1;
        // 1이 아닌 2부터 6씩 증가함으로 2로 설정
        int range = 2;

        if (bee == 1){
            System.out.println(1);
        }
        else{
            // bee = 19, 3이반환
            while (range <= bee){
                range = range + (6 * count);
                count++;
            }
        }
        System.out.println(count);
    }
}

0개의 댓글