일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- UI한글변경
- 입출력 패턴
- Django Nodejs 차이점
- 구조체와 클래스의 공통점 및 차이점
- scanf
- double ended queue
- k-eta
- 입/출력
- string 메소드
- 매크로
- 자료구조
- c++
- Django의 편의성
- EOF
- 이분그래프
- getline
- 알고리즘 공부방법
- 연결요소
- iOS14
- vscode
- correlation coefficient
- 프레임워크와 라이브러리의 차이
- 엑셀
- 시간복잡도
- 백준
- Django란
- string 함수
- 표준 입출력
- 2557
- 장고란
Archives
- Today
- Total
Storage Gonie
(3) [C++, Java] 백준 No.10820 : 문자열 분석 본문
반응형
문제
풀이
# C++
#include <iostream>
using namespace std;
int main()
{
string s;
while (getline(cin, s)) // 공백을 포함하여 통째로 받는다.
{
int lower = 0; //소문자 개수
int upper = 0; //대문자 개수
int number = 0; //숫자 개수
int space = 0; //공백 개수
for (char x : s)
{
if (x >= 'a' && x <= 'z')
lower += 1;
else if (x >= 'A' && x <= 'Z')
upper += 1;
else if (x >= '0' && x <= '9')
number += 1;
else if (x == ' ')
space += 1;
}
cout << lower << ' ' << upper << ' ' << number << ' ' << space << endl;
}
}
# Java
import java.util.*;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
while (sc.hasNextLine()) {
String s = sc.nextLine();
int lower = 0;
int upper = 0;
int digit = 0;
int space = 0;
for (int i=0; i<s.length(); i++) {
char c = s.charAt(i);
if ('A' <= c && c <= 'Z') {
upper += 1;
} else if ('a' <= c && c <= 'z') {
lower += 1;
} else if ('0' <= c && c <= '9') {
digit += 1;
} else if (c == ' ') {
space += 1;
}
}
System.out.println(lower + " " + upper + " " + digit + " " + space);
}
}
}
반응형
'알고리즘 > 백준풀이5. 문자열' 카테고리의 다른 글
(6) [C++, Java] 백준 No.10824 : 네 수 (0) | 2019.04.25 |
---|---|
(5) [C++, Java] 백준 No.11655 : ROT13 (0) | 2019.04.25 |
(4) [C++, Java] 백준 No.2743 : 단어 길이 재기 (0) | 2019.04.25 |
(2) [C++, Java] 백준 No.10809 : 알파벳 찾기 (0) | 2019.04.25 |
(1) [C++, Java] 백준 No.10808 : 알파벳 개수 (0) | 2019.04.25 |
Comments