C++ HackerRank|Simple Text Editor

来源:互联网 发布:广东韶关网络问政平台 编辑:程序博客网 时间:2024/06/03 13:00

  1. Dashboard 
  2.  Data Structures 
  3.  Stacks 
  4.  Simple Text Editor
    1. #include <iostream>#include <stack>#include <string>using namespace std;struct Int_String_Int{    int first;    string second;};string str, temp;stack<Int_String_Int> operation;int main(int argc, char const *argv[]){    int t, query, k, undo;    cin >> t;    Int_String_Int opera;    while (t --)    {        cin >> query;        opera.first = query;        switch(query)        {            case 1:                cin >> temp;                opera.second = temp;                operation.push(opera);                str += temp;                break;            case 2:                cin >> k;                opera.second = str.substr(str.size() - k, str.size());                str.erase(str.size() - k, str.size());                operation.push(opera);                break;            case 3:                cin >> k;                cout << str[k-1] << endl;                break;            case 4:                undo = operation.top().first;                                temp = operation.top().second;                if (undo == 1)                {                    str.erase(str.size() - temp.size(), str.size());                }                else                {                    str += temp;                }                operation.pop();                break;            default:                break;        }    }    return 0;}


0 0
原创粉丝点击