Submission #1441601
Source Code Expand
#include <bits/stdc++.h> using namespace std; typedef long long lint; typedef long double llf; typedef pair<int, int> pi; int n, m; int trie[400005][26], piv, sum[400005], term[100005]; string s[100005]; char str[400005]; int cnt[100005][26][26]; int main(){ scanf("%d",&n); for(int i=0; i<n; i++){ scanf("%s", str); int p = 0; for(int j=0; str[j]; j++){ if(!trie[p][str[j] - 'a']){ trie[p][str[j] - 'a'] = ++piv; } p = trie[p][str[j] - 'a']; } s[i] = str; term[i] = p; sum[p]++; } for(int i=piv; i>=0; i--){ for(int j=0; j<26; j++){ if(trie[i][j]) sum[i] += sum[trie[i][j]]; } } for(int i=0; i<n; i++){ int p = 0; for(auto &j : s[i]){ int nxt = j - 'a'; for(int k=0; k<26; k++){ if(k != nxt && trie[p][k]) cnt[i][nxt][k] += sum[trie[p][k]]; } p = trie[p][nxt]; } } int q; scanf("%d",&q); for(int i=0; i<q; i++){ int pos; scanf("%d %s",&pos, str); int ans = sum[term[--pos]]; for(int j=0; j<26; j++){ for(int k=0; k<j; k++){ ans += cnt[pos][str[k] - 'a'][str[j] - 'a']; } } printf("%d\n", n+1-ans); } }
Submission Info
Submission Time | |
---|---|
Task | E - Lexicographical disorder |
User | koosaga |
Language | C++14 (GCC 5.4.1) |
Score | 1100 |
Code Size | 1151 Byte |
Status | AC |
Exec Time | 250 ms |
Memory | 284032 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:14:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d",&n); ^ ./Main.cpp:16:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%s", str); ^ ./Main.cpp:44:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d",&q); ^ ./Main.cpp:47:27: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d %s",&pos, str); ^
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 1100 / 1100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | s1.txt, s2.txt |
All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt, 40.txt, s1.txt, s2.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01.txt | AC | 242 ms | 284032 KB |
02.txt | AC | 250 ms | 284032 KB |
03.txt | AC | 243 ms | 284032 KB |
04.txt | AC | 242 ms | 284032 KB |
05.txt | AC | 217 ms | 146048 KB |
06.txt | AC | 136 ms | 58624 KB |
07.txt | AC | 133 ms | 50688 KB |
08.txt | AC | 126 ms | 47232 KB |
09.txt | AC | 118 ms | 46848 KB |
10.txt | AC | 116 ms | 46592 KB |
11.txt | AC | 183 ms | 90240 KB |
12.txt | AC | 197 ms | 129792 KB |
13.txt | AC | 209 ms | 173568 KB |
14.txt | AC | 133 ms | 56576 KB |
15.txt | AC | 117 ms | 46976 KB |
16.txt | AC | 115 ms | 46592 KB |
17.txt | AC | 117 ms | 46464 KB |
18.txt | AC | 95 ms | 7168 KB |
19.txt | AC | 95 ms | 7168 KB |
20.txt | AC | 106 ms | 11264 KB |
21.txt | AC | 106 ms | 11264 KB |
22.txt | AC | 107 ms | 11264 KB |
23.txt | AC | 200 ms | 119296 KB |
24.txt | AC | 182 ms | 90240 KB |
25.txt | AC | 200 ms | 127744 KB |
26.txt | AC | 91 ms | 7168 KB |
27.txt | AC | 110 ms | 23808 KB |
28.txt | AC | 114 ms | 29952 KB |
29.txt | AC | 114 ms | 14720 KB |
30.txt | AC | 166 ms | 65408 KB |
31.txt | AC | 114 ms | 23552 KB |
32.txt | AC | 101 ms | 15616 KB |
33.txt | AC | 101 ms | 21376 KB |
34.txt | AC | 101 ms | 19456 KB |
35.txt | AC | 103 ms | 23552 KB |
36.txt | AC | 240 ms | 284032 KB |
37.txt | AC | 105 ms | 27392 KB |
38.txt | AC | 105 ms | 27392 KB |
39.txt | AC | 2 ms | 6400 KB |
40.txt | AC | 2 ms | 6400 KB |
s1.txt | AC | 2 ms | 6400 KB |
s2.txt | AC | 2 ms | 6400 KB |