Submission #562755

#TimeUsernameProblemLanguageResultExecution timeMemory
562755SSRSSelling RNA Strands (JOI16_selling_rna)C++14
10 / 100
1561 ms8764 KiB
#include <bits/stdc++.h> using namespace std; struct binary_indexed_tree{ int N; vector<int> BIT; binary_indexed_tree(int N): N(N), BIT(N + 1, 0){ } void add(int i){ i++; while (i <= N){ BIT[i]++; i += i & -i; } } int sum(int i){ int ans = 0; while (i > 0){ ans += BIT[i]; i -= i & -i; } return ans; } int sum(int L, int R){ return sum(R) - sum(L); } }; int main(){ int N, M; cin >> N >> M; vector<string> S(N); for (int i = 0; i < N; i++){ cin >> S[i]; } for (int i = 0; i < M; i++){ string P, Q; cin >> P >> Q; int ans = 0; for (int j = 0; j < N; j++){ if (S[j].size() >= P.size() && S[j].size() >= Q.size()){ if (S[j].substr(0, P.size()) == P && S[j].substr(S[j].size() - Q.size()) == Q){ ans++; } } } cout << ans << endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...