IT 프로그래밍/백준

[C++] 백준 27866 문자와 문자열

기술1 2024. 3. 20. 22:12
반응형

 

https://www.acmicpc.net/problem/27866

 

27866번: 문자와 문자열

첫째 줄에 영어 소문자와 대문자로만 이루어진 단어 $S$가 주어진다. 단어의 길이는 최대 $1\,000$이다. 둘째 줄에 정수 $i$가 주어진다. ($1 \le i \le \left|S\right|$)

www.acmicpc.net

풀이


#include <iostream>
#include <string>

using namespace std;

string word;
int n;

int main() {
	cin >> word;
	cin >> n;

	cout << word.substr(n-1, 1); 

	return 0;
}

문자열 word와 숫자 n을 입력받아 substr을 통해 출력해주도록 해주었습니다.

 

물론 저처럼 하는 대신 입력받은 문자열을 직접 인덱싱하여 출력해주어도 됩니다. 저는 substr 함수를 사용하여 부분 문자열을 출력받아 출력해주도록 해주었습니다. 

 

풀이과정은 간단해서 생략하겠습니다. 

 

다른 풀이


#include <iostream>
using namespace std;

int main() {
    int index;
    string s;

    cin >> s >> index;

    cout << s[index - 1];

    return 0;
}

s[index -1] 은 index -1의 위치의 문자를 가져오는 것입니다. 이때 index는 사용자가 입력한 정수값이며 배열 인덱스와 마찬가지로 0부터 시작하지만 1부터 시작이 되어 있으므로 index에서 1을 빼준 것으로 변환해줍니다. 

 

반응형

'IT 프로그래밍 > 백준' 카테고리의 다른 글

[C++] 백준 9086 문자열  (0) 2024.03.20
[C++] 백준 2743 : 단어 길이 재기  (0) 2024.03.20
[C++] 3052 나머지  (0) 2024.03.19
[C++] 5597 과제 안 내신 분..?  (0) 2024.03.18
[C++] 백준 10813 공 바꾸기 풀이  (0) 2024.03.18