LGOJ3879 TJOI2010 阅读理解

Posted yspm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LGOJ3879 TJOI2010 阅读理解相关的知识,希望对你有一定的参考价值。

不可否认,(TJOI)的这道题确实不难

为本题写博客的唯一原因就是

(STL)大法好!!!!

Description

link

不简述题意了,因为实在是简单

Solution

直接(map<string,vector<int> > mp),后面的(vector)统计答案就完事了

码量小,思维难度小,何乐不为?

Code

#include <bits/stdc++.h>
using namespace std;
#define int long long
namespace yspm {
map<string, vector<int> > mp;
inline int read() {
    int res = 0, f = 1;
    char k;
    while (!isdigit(k = getchar()))
        if (k == '-')
            f = -1;
    while (isdigit(k)) res = res * 10 + k - '0', k = getchar();
    return res * f;
}
string s;
int tmp, n, sz;
bool vis[10010];
signed main() {
    n = read();
    for (int i = 1; i <= n; ++i) {
        tmp = read();
        while (tmp--) cin >> s, mp[s].push_back(i);
    }
    vector<int> vec;
    n = read();
    for (int i = 1; i <= n; ++i) {
        cin >> s;
        if (!mp.count(s)) {
            puts("");
            continue;
        }
        memset(vis, 0, sizeof(vis));
        vec = mp[s];
        sz = vec.size();
        for (int j = 0; j < sz; ++j)
            if (!vis[vec[j]])
                printf("%lld ", vec[j]), vis[vec[j]] = 1;
        puts("");
    }
    return 0;
}
}  // namespace yspm
signed main() { return yspm::main(); }

以上是关于LGOJ3879 TJOI2010 阅读理解的主要内容,如果未能解决你的问题,请参考以下文章

luogu P3879 [TJOI2010]阅读理解 题解

「字典树」[TJOI2010]阅读理解

LGOJ5651基础最短路练习题

luoguP3871 [TJOI2010]中位数

[LGOJ]P1379八数码难题[双向广搜].cpp

TJOI2010中位数