문제 출처
https://www.acmicpc.net/problem/10820
접근 방식 및 풀이
- string을 char형으로 가져와서 아스키코드에 맞게 범위를 지정해주었다.
- 공백은 아래 블로그를 참고하며 표를 보면 126인데.. 126으로 하면 처리가 안되는 것 같아서 우선 else 조건으로 빼주었다.
https://coding-factory.tistory.com/74
소스 코드
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 |