관리 메뉴

cococo-coding

2711번. 오타맨 고창영 본문

[BOJ] 코드 모음/C++_learning 문제집

2711번. 오타맨 고창영

_dani 2023. 12. 5. 23:14

최종코드

#include <iostream>
#include <string>
using namespace std;

int main() {
    //1 테스트케이스 개수를 입력받는다
    //2 각 테스트케이스의 오타 낸 위치와 문자열을 입력받는다.
    //3. 오타를 지운 문자열을 만든다.
    //4. 오타를 지운 문자열을 출력한다. 

    //string 클래스 이용해보자

    //1
    int T;
    cin >> T;

    //2
    int where=0;
    string str;  
    for(int i=0; i<T; i++){
        cin >> where >> str;
        int length=str.size(); 
        //3
        for(int j=0; j<=length; j++){
            if(where==j){
                str.erase(str.begin()+j-1);
                cout << str << endl; //4
            }           
        }   
    } 
    return 0;
}

str.erase(str.begin()+j-1)가 포인트이다.

str.erase는 세 가지 방법으로 이용가능한데, 여기서 특정철자만 지우고 싶을때는 str.erase(i)이런식으로 넣어주면 된다.

나는 str.begin()+j-1을 넣어줬고, 처음 시작하는 철자에서 j-1만큼 더해서 그 철자만 지워서 출력해줬다.

2023.12.05