본문 바로가기
Develop/백준 (Cpp)

[백준] 5524번 : 입실 관리 (C++)

by Tarra 2023. 2. 5.

5524번 : 입실 관리


문제 )

JOI회사에서는 방에 들어가기 위해 입실 기록을 입력할 때 알파벳으로 이름을 입력한다. 그런데, 컴퓨터에 오류가 나서 대문자 소문자가 섞여버려 입실 기록이 읽기 힘들어졌다.

JOI회사의 입실 기록을 읽기 쉽게 하기 위해서 기록된 이름을 모두 소문자로 변환하는 프로그램을 작성하라. 단, 입실 기록에는 같은 이름의 사람이 생기기도 한다.

 

 

입력 :

첫째 줄에는 정수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄부터는 1글자 이상 20문자 이하의 영어 대문자, 소문자로만 이루어지는 문자열 Si가 주어진다.

 

 

 

출력 :

i번째 줄에, i번째 입실자의 이름을 소문자로 출력한다.

 

 

서브태스크  :

 

 

풀이)

<algorithm> STL의 transform을 사용하면 조금은 쉽게 풀 수 있다.

 

해당 메소드는 1, 2번째 파라미터로 지정한 주소를 4번째 파라미터가 지정한 것으로 변환이 가능하다.

(3번째 메소드는 변환해서 저장할 곳의 시작점)

 

우리는 해당 문자들을 모두 소문자로 바꿀 것이기 때문에 ::tolower를 이용하여 변환해주면 된다.

(전역 메소드이기 때문에 이름공간은 전역으로 해주어야 한다.)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <algorithm>
#include <string>
 
using namespace std;
 
int main()
{
    int t;
    string word;
    cin >> t;
 
 
    for (int i = 0; i < t; i++) {
        cin >> word;
        transform(word.begin(), word.end(), word.begin(), ::tolower);
        cout << word << "\n";
    }
 
    return 0;
}
 
cs

출처 : https://www.acmicpc.net/problem/5524 

 

5524번: 입실 관리

JOI회사에서는 방에 들어가기 위해 입실 기록을 입력할 때 알파벳으로 이름을 입력한다. 그런데, 컴퓨터에 오류가 나서 대문자 소문자가 섞여버려 입실 기록이 읽기 힘들어졌다. JOI회사의 입실

www.acmicpc.net