QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#29906 | #2902. Shortest Missing Subsequences | George_Plover# | AC ✓ | 171ms | 110988kb | C++ | 1.1kb | 2022-04-23 13:35:10 | 2022-04-28 16:00:14 |
Judging History
answer
#include <bits/stdc++.h>
#define A 26
#define S 1000005
using namespace std;
int f[S][A], g[S], d, n, k, z, y;
map<char, int> m;
char s[S], t[S];
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin >> s;
for (d = 0; s[d]; d++)
m[s[d]] = d;
cin >> (s + 1);
n = strlen(s + 1);
for (int i = 1; i <= n; i++)
s[i] = m[s[i]];
for (int i = 0; i < d; i++)
f[n][i] = n + 1;
g[n] = n + 1;
for (int i = n - 1; i >= 0; i--)
for (int j = 0; j < d; j++)
if ((f[i][j] = s[i + 1] == j ? i + 1 : f[i + 1][j]) > g[i])
g[i] = f[i][j];
for (int i = 0; i <= n; i = g[i])
++k;
for (cin >> z; z--;)
{
cin >> t;
y = strlen(t);
if (y != k)
cout << "0\n";
else
{
for (int i = 0; i < y; i++)
t[i] = m[t[i]];
for (int i = d = 0; i < y && d <= n; i++)
d = f[d][t[i]];
cout << (d > n ? "1\n" : "0\n");
}
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 7752kb
input:
abcd abcccabac 3 cbb cbba cba
output:
0 0 0
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 7704kb
input:
z zzzzzzz 10 z zz zzz zzzz zzzzz zzzzzz zzzzzzz zzzzzzzz zzzzzzzzz zzzzzzzzzz
output:
0 0 0 0 0 0 0 1 0 0
result:
ok 10 lines
Test #3:
score: 0
Accepted
time: 171ms
memory: 110096kb
input:
abcdefghijklmnopqrstuvwxyz oaxsgfhkwuecvdrltjzpqibnymtaympfvuzogrqkwhbdcsjleixnojmletqrbkdzfhawpsxcvyniughnqibtzjpewovluyrdfmakxscgcyhmqbieontgwufalzjsprvkdxzfqsrijldncaphwxyutbgevmokltvqhkprunydecwmgxoijzbfsacafhozxyljvnrmbdupeqiswgtkbhwxptqayglfovirnjuemkdczsmyadiqnwtxjbhlsvokpucgefrzvicbdnkrjmxgf...
output:
0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
result:
ok 26 lines
Test #4:
score: 0
Accepted
time: 35ms
memory: 110988kb
input:
d dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd...
output:
1
result:
ok single line: '1'
Test #5:
score: 0
Accepted
time: 83ms
memory: 110120kb
input:
abcdefghijklmnopqrstuvwxyz wktxlbgnmkyuvhmjpxxfndhdtcqugxnsvpxdictbxwrimocjliqqxfomlwngbvyoyacswksvurqaqmvwigtiswbfyofgvdvolcciwnymchohsdoivyofupophlcpukipgheeveaqrgmbcrtdwdybwcxsyvorkvsnhnvgwfxrpvykphlmrqsyujciqdmpqiwegathdsfjueilvbcudwsfbvpqxyoprbadqepvpdkcjvdapafesdmftubyraolqcvgbfbqhjlebnmbpcskf...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 ...
result:
ok 10000 lines
Test #6:
score: 0
Accepted
time: 90ms
memory: 110068kb
input:
abcdefghijklmnopqrstuvwxyz wktxlbgnmkyuvhmjpxxfndhdtcqugxnsvpxdictbxwrimocjliqqxfomlwngbvyoyacswksvurqaqmvwigtiswbfyofgvdvolcciwnymchohsdoivyofupophlcpukipgheeveaqrgmbcrtdwdybwcxsyvorkvsnhnvgwfxrpvykphlmrqsyujciqdmpqiwegathdsfjueilvbcudwsfbvpqxyoprbadqepvpdkcjvdapafesdmftubyraolqcvgbfbqhjlebnmbpcskf...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 ...
result:
ok 10000 lines
Test #7:
score: 0
Accepted
time: 135ms
memory: 110440kb
input:
abcdefghijklmnopqrstuvwxyz ngmgaeihgmnehfjdicecmbjmeilmjceblbnkfhibfgfjkdihhnieamiablnglnmkkajhnnfdlflnbdjddmcmihbbfihbeielbifnidmjijehbjmgfjdecdncajkehbbkmccanblnikgnlieimdndkjngjehhkklmfbfjbhjkfnddalebldfmcfgnabmcnldanjkijkbabkdjnjbgbfnbajadclbhdlmakaigjbnebdbkefgcaihajblgdeflhnjclkdmamkcncfiebjhk...
output:
1 0 1 1 1 0 1 0 0 1 0 1 0 1 0 0 0 0 1 1 1 0 0 0 1 1 0 0 1 1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 1 0 1 1 1 0 0 1 0 0 0 0 1 0 1 1 1 1 0 0 0 1 0 0 0 1 1 0 1 0 1 0 0 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 0 1 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 1 0 1 0 0 0 1 0 1 1 0 1 0 0 0 0 1 1 1 1 0 0 0 1 0 0 1 0 1 0 ...
result:
ok 1000000 lines
Test #8:
score: 0
Accepted
time: 3ms
memory: 7704kb
input:
abcd aabcdacbacdabcabdcccbddadbcdbacbdad 8 dddaadda dddaaddb dddaaddc dddaaddd dddaadaa dddaadab dddaadac dddaadad
output:
0 0 0 0 0 0 0 0
result:
ok 8 lines
Test #9:
score: 0
Accepted
time: 0ms
memory: 7632kb
input:
f f 2 f ff
output:
0 1
result:
ok 2 lines
Test #10:
score: 0
Accepted
time: 4ms
memory: 7732kb
input:
xy x 6 x y xx xy yx yy
output:
0 1 0 0 0 0
result:
ok 6 lines
Test #11:
score: 0
Accepted
time: 74ms
memory: 110492kb
input:
abcdefghijklmnopqrstuvwxyz irxwwhliqvpptnwkhqgyxopsvwguplvwksziymgggtrgzynukovgrkwpzqrknkukvpzmzgoxzrztijtvymivmyvuqzoqxzujmlsyqxzqosxgqlvwootjnryuwuvnhptqiwjqxonqvgpgmuxsssotjjqkgwkrzyrkoqnzxsnpzltrsvgowxxyzvqwiqwrkozhqynrrkzqoqxnongrrtwsmpsgwktjrsjyhwrwxxzlgxzuhhygpgvvllliwtjnmhjjlrzjtltumpumqpigm...
output:
0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 ...
result:
ok 200000 lines
Test #12:
score: 0
Accepted
time: 4ms
memory: 7632kb
input:
abcdefghijklmnopqrstu orslbpmouunpnnfcgtbplsqimmroonbfbgoehmkohbdekngpkkudgpeknramojnffimsborgoheggfshaqrhteepcmchqdtsu 1 au
output:
0
result:
ok single line: '0'
Test #13:
score: 0
Accepted
time: 1ms
memory: 5704kb
input:
ab aab 1 bb
output:
1
result:
ok single line: '1'
Test #14:
score: 0
Accepted
time: 4ms
memory: 7772kb
input:
ab ba 1 bb
output:
1
result:
ok single line: '1'
Test #15:
score: 0
Accepted
time: 0ms
memory: 5728kb
input:
abc baaaaac 1 cc
output:
1
result:
ok single line: '1'
Test #16:
score: 0
Accepted
time: 3ms
memory: 7696kb
input:
abc abcccabac 3 cbb cbba cba
output:
1 0 0
result:
ok 3 lines