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));
}
}