매일 Algorithm

신재원·2023년 2월 8일
0

Algorithm

목록 보기
31/243

백준 9933번 (bronze 1)

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class problem43 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int size = in.nextInt();
        List<String> userInputStringList = new ArrayList<>();


        for (int i = 0; i < size; i++) {
            String inputString = in.next();
            
            // reverse() 메서드를 활용하기위해 StringBuffer사용
            String reverseInputString = new StringBuffer(inputString).
            reverse().toString();

            // 입력예시에서 kisik는 reverse를 하여도 입력값이랑 동일하다.
            
            if(userInputStringList.contains(reverseInputString) ||
            inputString.equals(reverseInputString)){
                System.out.println(inputString.length() +" " + 
                inputString.charAt(inputString.length()/2));
                return;
            }else{
                userInputStringList.add(inputString);
            }

        }


    }
}

백준 10769번 (bronze 1)


import java.util.Scanner;

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

        Scanner in = new Scanner(System.in);
        String inputString = in.nextLine();
        // 이모티콘 갯수를 셀수있는 로직
        int smile = (inputString.length() -
        inputString.replace(":-)", "").length()) / 3;
        int sad = (inputString.length() -
        inputString.replace(":-(", "").length()) / 3;

        String result = "";
        if(smile == 0 && sad == 0){
            result = "none";
        } else if (smile > sad) {
            result = "happy";
        } else if (sad > smile) {
            result = "sad";
        }else{
            result = "unsure";
        }
        System.out.println(result);




      /*  반례 =  :-(:-( :-):-):-) split단위로 잘라서 검증을하면 낱낱이체크가안돼
                 happy로 출력이되어야 한데, unsure로 출력이된다.

      Scanner in = new Scanner(System.in);
        String inputString = in.nextLine();
        int countHappy = 0;
        int countSad = 0;
        String[] inputStringChar = inputString.split(" ");
        for (int i = 0; i < inputStringChar.length; i++) {
            if(inputStringChar[i].contains(":-)")){
                countHappy++;
            } else if (inputStringChar[i].contains(":-(")) {
                countSad++;
            }
        }
        if(countHappy > countSad){
            System.out.println("happy");

        } else if (countSad > countHappy) {
            System.out.println("sad");

        } else if (countHappy == countSad) {
            System.out.println("unsure");
        } else{
            System.out.println("none");
        }
*/

    }
}

백준 10989번 (bronze 1)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class problem45 {
    public static void main(String[] args) throws IOException {
        // 처리속도를 줄이기 위해 BufferReader 사용
        BufferedReader br = 
        new BufferedReader(new InputStreamReader(System.in));

        // 또한 출력의 처리속도를 줄이기 위해 StringBuilder 사용
        StringBuilder sb = new StringBuilder();

        int size =Integer.parseInt(br.readLine());
        int [] array = new int[size];

        for (int i = 0; i < size; i++) {
            array[i] = Integer.parseInt(br.readLine());
        }

        Arrays.sort(array);

        for (int i = 0; i < array.length; i++) {
            sb.append(array[i]).append("\n");
        }
        System.out.println(sb);
    }
}

0개의 댓글