본문 바로가기

백준 문제풀기/JAVA

[백준 2386 JAVA 자바] 도비의 영어 공부

도비가 이번에는 영어공부를 한다네요

영어 문장에서 특정 알파벳(대소문자 구분 x)이 몇 번  나오는지 구하는 문제입니다

 

1. 입력값중에 대상 알파벳과, 영어 문장을 잘 구분해 줍시다

2. 전부 소문자로 바꿔서 개수를 세줍시다

3. #가 나오면 중지이기에 while 반복문을 써줍시다

 

코드입니다

 

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

public class Main {    
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
               
        while (true) {
        	String str = br.readLine();
        	String flag = str.substring(0,1);
        	String flag2 = flag.toLowerCase();
        	
        	if(flag.equals("#")) {
        		break;
        	}else {  		
        		String str2 = str.substring(2).toLowerCase();
        		int n = str2.length();
        		int count = 0;
        		
        		for(int i=0; i<n; i++) {
        			if(flag2.equals(str2.substring(i,i+1))) {
        				count += 1;
        			}
        		}        		
        		sb.append(flag+" "+count+"\n");
        	}
        }        
        System.out.println(sb);    
    }
}

scan.nextLine()으로 먼저 입력 받은 후

0번 = 대상 알파벳

2~번 = 영어 문장임을 잘 구분해줍시다