Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <unordered_map>
- #include <string>
- #include <vector>
- #include <iostream>
- #include <set>
- #include <queue>
- #include "optimization.h"
- #include <unordered_map>
- #include <map>
- #include <iomanip>
- using namespace std;
- unordered_map<string, bool> is;
- unordered_map<string, string> decode;
- int main() {
- int64_t k, l;
- // cin >> k >> l;
- k = readInt();
- l = readInt();
- for (int i = 0; i < k; i++) {
- // char letter[2];
- // string letter, code;
- // char code[100000];
- char buffer[100010];
- // cin >> letter >> code;
- readLine(buffer);
- // readLine(code);
- auto buf = string(buffer);
- char letter = buf[0];
- string code = buf.substr(3);
- // scanf("%c: %s", letter, code);
- // auto letter_str = string(letter).substr(0, 1);
- is[string(code)] = true;
- decode[string(code)] = letter;
- // cout << letter << " " << string(code) << std::endl;
- // cout << "OK";
- }
- // init("");
- char input_[10000000];
- // cin >> input;
- readLine(input_);
- auto input = string(input_);
- string cur_s;
- for (auto x : input){
- cur_s += x;
- if (is[cur_s]) {
- // cout << decode[cur_s];
- writeWord(decode[cur_s].c_str());
- cur_s = "";
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement