(erase) Mispelling4 hdu1984

Mispelling4

Time Limit: 1000/500 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)

Total Submission(s): 2592    Accepted Submission(s): 1731

 

 

Problem Description

Misspelling is an art form that students seem to excel at. Write a program that removes the nth character from an input string.

 

Input

The first line of input contains a single integer N, (1 ≤ N ≤ 1000) which is the number of datasets that follow.

Each dataset consists of a single line of input containing M, a space, and a single word made up of uppercase letters only. M will be less than or equal to the length of the word. The length of the word is guaranteed to be less than or equal to 80.

 

Output

For each dataset, you should generate one line of output with the following values: The dataset number as a decimal integer (start counting at one), a space, and the misspelled word. The misspelled word is the input word with the indicated character deleted.

 

Sample Input

4

4 MISSPELL

1 PROGRAMMING

7 CONTEST

3 BALLOON

 

Sample Output

1 MISPELL

2 ROGRAMMING

3 CONTES

4 BALOON

 

利用erase函数。由于remove()函数不是成员,因此不能调整链表的长度。remove()函数并不是真正的删除,要想真正删除元素则可以使用erase()或者resize()函数

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main()
{
    int t,b=0;
    cin>>t;
    while(t--)
    {
        ++b;
        int d;
        string a;
        cin>>d>>a;
        string::iterator it=a.begin();
        a.erase(it+d-1);            //里面的是迭代器。
        printf("%d ",b);
        cout<<a<<endl;
    }
    return 0;
}

 

转载于:https://www.cnblogs.com/Weixu-Liu/p/9272571.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值