문제 출처
https://www.acmicpc.net/problem/10820
10820번: 문자열 분석
문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오. 각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있다.
www.acmicpc.net
접근 방식 및 풀이
- string을 char형으로 가져와서 아스키코드에 맞게 범위를 지정해주었다.
- 공백은 아래 블로그를 참고하며 표를 보면 126인데.. 126으로 하면 처리가 안되는 것 같아서 우선 else 조건으로 빼주었다.
https://coding-factory.tistory.com/74
[Java] 아스키코드, 유니코드를 문자나 숫자로 변환하기
아스키 코드 미국에서 표준화가 추진된 정보교환용 7bit 부호로 정의합니다. 1962년 안시(ANSI)가 정의한 미국 표준 정보교환 코드이며 1963년 미국표준협회(ASA)에 의해 결정되어 미국의 표준부호가 되었습니다...
coding-factory.tistory.com
소스 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()){
String n = sc.nextLine();
int small = 0;
int large = 0;
int num = 0;
int blank = 0;
for (int i = 0; i < n.length(); i++) {
if(n.charAt(i) >= 65 && n.charAt(i) <=90){
large += 1;
}else if(n.charAt(i) >= 97 && n.charAt(i) <=122){
small +=1;
}else if(n.charAt(i) >= 46 && n.charAt(i) <=57){
num +=1;
}else {
blank += 1;
}
}
System.out.println(small + " " + large + " " + num + " " + blank);
}
}
}
결과
'Competition > Baekjoon' 카테고리의 다른 글
[백준] 10828번 자바 스택 기초 (0) | 2020.03.11 |
---|---|
[백준] 10814번 자바 array2차원배열 (0) | 2020.03.11 |
[백준] 10809번 자바 (0) | 2020.03.11 |