개발일기 정답찾기

문자열 알고리즘 String 문자 찾기, 갯수 구하기 - 유딩동 Tistory 본문

IT/알고리즘

문자열 알고리즘 String 문자 찾기, 갯수 구하기 - 유딩동 Tistory

유딩동 2021. 12. 25. 16:40

입력 문자열 中 하나의 문자가 몇번 언급 되었는지 구하는 알고리즘

 

* 입력

Scanner

n

* 출력

2

 

1. charAt 사용

import java.util.Scanner;

class Main {
	
	public int solution(String str, char t) {
		int answer = 0;
		// 대문자 형으로 바꿔줌. 소문자 형으로 바꾸어도 무관
		str = str.toUpperCase(); // str.toLowerCase() - 소문자형
		t = Character.toUpperCase(t); // charater형이므로

		for(int i=0; i<str.length(); i++) { // str의 길이만큼 check
			if(str.charAt(i) == t) { // 해당 문자가 t의 입력 문자열과 동일하다면
				answer++; // 리턴해줄 answer 증가
			}
		}
		
		return answer;
	}
	
	public static void main(String args[]) {
		
		Main t = new Main();
		Scanner kb = new Scanner(System.in);
		String str = kb.next();
		
		char c = kb.next().charAt(0);
		
		System.out.println(t.solution(str, c));
	}
}

 

2. toCharArray() 사용

import java.util.Scanner;

class Main {
	
	public int solution(String str, char t) {
		int answer = 0;
		// 대문자 형으로 바꿔줌. 소문자 형으로 바꾸어도 무관
		str = str.toUpperCase(); // str.toLowerCase() - 소문자형
		t = Character.toUpperCase(t); // charater형이므로

		for(char x : str.toCharArray()) { // 자바 toCharArray() 메소드는 문자열을 char형 배열로 바꿔줌
			if(x == t) {
				answer++;
			}
		}
		
		return answer;
	}
	
	public static void main(String args[]) {
		
		Main t = new Main();
		Scanner kb = new Scanner(System.in);
		String str = kb.next();
		
		char c = kb.next().charAt(0);
		
		System.out.println(t.solution(str, c));
	}
}

 

Comments