QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#324912#6516. New but Nostalgic ProblemLainAC ✓29ms119840kbC++232.4kb2024-02-11 01:31:582024-02-11 01:31:59

Judging History

你现在查看的是最新测评结果

  • [2024-02-11 01:31:59]
  • 评测
  • 测评结果:AC
  • 用时:29ms
  • 内存:119840kb
  • [2024-02-11 01:31:58]
  • 提交

answer

#include "bits/stdc++.h"
using namespace std;


// Source: ecnerwala
// Fast recursion with lambdas
// Use it like:
// auto f = y_combinator([](auto self,....)->return_type{...self(...)});
template <class Fun>
class y_combinator_result {
  Fun fun_;

 public:
  template <class T>
  explicit y_combinator_result(T &&fun) : fun_(std::forward<T>(fun)) {}

  template <class... Args>
  decltype(auto) operator()(Args &&...args) {
    return fun_(std::ref(*this), std::forward<Args>(args)...);
  }
};

template <class Fun>
decltype(auto) y_combinator(Fun &&fun) {
  return y_combinator_result<std::decay_t<Fun>>(std::forward<Fun>(fun));
}

int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);

  int tt;
  cin >> tt;
  while(tt--) {
    struct Node {
      array<int, 26> children;
      int cnt, fin;

      Node() {
        for (int i =0; i < 26; i++) children[i] = -1;
        cnt = fin = 0;
      }
    };
    vector<Node> trie;
    trie.push_back(Node{});

    auto insert = [&](string s)->void {
      int curr = 0;
      for (auto& c : s) {
        trie[curr].cnt++;
        int cidx = c - 'a';
        if (trie[curr].children[cidx] == -1) {
          trie[curr].children[cidx] = trie.size();
          trie.push_back(Node{});
        }
        curr = trie[curr].children[cidx];
      }
      trie[curr].fin++;
      trie[curr].cnt++;
    };

    int n, k;
    cin >> n >> k;
    vector<string> v(n);
    for (auto& x : v) cin >> x, insert(x);

    string ans = "";
    y_combinator([&](auto self, int trie_node, int k)->void {
      int num_non_empty = 0;
      for (int i =0; i < 26; i++) {
        if (trie[trie_node].children[i] != -1) {
          num_non_empty++;
        }
      }
      k = max(0, k - trie[trie_node].fin);
      k = max(0, k - num_non_empty);
      if (k == 0) return;
      for (int i =0; i < 26; i++) {
        if (trie[trie_node].children[i] != -1) {
          int nxt = trie[trie_node].children[i];
          int r = min(k, trie[nxt].cnt - 1);
          k -= r;
          if (k == 0) {
            ans.push_back('a' + i);
            self(nxt, r+1);
            break;
          }
        }
      }
    })(0, k);

    if (ans.empty()) {
      cout << "EMPTY\n";
      continue;
    }
    cout << ans << '\n';
  }
}
// Choose k strings
// the lexmax of the pairwise LCPs of the k strings should be lexmin


详细

Test #1:

score: 100
Accepted
time: 1ms
memory: 3824kb

input:

2
5 3
gdcpc
gdcpcpcp
suasua
suas
sususua
3 3
a
b
c

output:

gdcpc
EMPTY

result:

ok 2 lines

Test #2:

score: 0
Accepted
time: 19ms
memory: 3560kb

input:

20000
5 3
apveofpr
irdbqk
rnionnjjrk
wrpihlsw
ofylfsriof
5 4
iiltghqg
kybhogptqf
jfnmqxzrdq
rpztcluq
tzmnrcjae
5 5
ysp
vujmkkcutl
ksawqeiiaf
waukilaq
wmlsutlued
5 3
pikybt
yiqmqvtjeq
tyrsoihf
vnvjrxpus
cuubpacubb
5 2
rihuvikhg
twrsuoervz
ukiekoohw
eysqgndpf
sxswpeqtaf
5 5
vxzhicbp
nvtdbgqal
jilppvpt...

output:

EMPTY
EMPTY
w
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
o
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
t
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
w
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPT...

result:

ok 20000 lines

Test #3:

score: 0
Accepted
time: 24ms
memory: 3764kb

input:

1000
10 9
wkpbdhbivgksnwvnqnynzrmhowmpbbtswjydwidifwuquenplmozlqnkxqefckyzcughrdbturdzsxrcggpzrtrvlewigox
qbxgxomnfarjtvfbxbabtpmhnuwvbxfpwpkjuzjsehofemfzxglvvthzgkzukwmlyfhajchvphdjfqmfubwwpdtdbjpfvk
qrsovcdbphsndcmjwxjhmktwvgakzqewnoymumlawlmmgjmbpivccldrrfgspjypwosdqgpyqnxhaukwycqntuxglbdwf
fbdtn...

output:

q
EMPTY
EMPTY
EMPTY
h
EMPTY
EMPTY
EMPTY
h
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
v
b
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
t
EMPTY
EMPTY
e
EMPTY
b
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
b
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
v
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPT...

result:

ok 1000 lines

Test #4:

score: 0
Accepted
time: 24ms
memory: 3564kb

input:

25000
10 8
phl
vwel
ufme
dtsf
con
giby
xlma
dhke
zjir
itws
9 5
qtgd
wcqj
ixmz
swv
myxo
eqq
yxiq
uvb
spbw
10 7
xrkp
ze
smt
nq
ijhw
lmxf
kcgs
hi
qwmq
hilw
8 7
rlf
taaq
hmdu
thex
dbb
spcp
awyn
khdu
10 10
voxx
tqv
ehtx
xctk
zamh
zua
rbyg
bmeh
wmiv
cmw
9 6
bzq
ayz
cdna
myi
rdeu
gtdo
ycy
sjec
ystp
9 4
tix...

output:

EMPTY
EMPTY
EMPTY
EMPTY
z
EMPTY
EMPTY
s
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
y
EMPTY
EMPTY
a
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
m
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
g
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
j
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
j
EMPTY
t
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
EMPTY
...

result:

ok 25000 lines

Test #5:

score: 0
Accepted
time: 24ms
memory: 118468kb

input:

1
898 840
fdefauodwerznqpzszernrspbndmdfkjrbazmworfvlfbxwcprhxenouzxirrhqtwgiwdcejexotjetwgzqlqtndynfzwmfakfeojtxwrvekebmudrouskcgpzncnsxwajwaoclvqnaycgaaktqctsmbnosbajzryxpxzxuwnzpvmyfobgogbllqyxplageeufjjnrlhairtetyridmhthpplivokbinfmblugrzkcyxuhewtyoxkfzmyhgsbafmgqazoqollibsxlprjneeqursjuomypstme...

output:

y

result:

ok single line: 'y'

Test #6:

score: 0
Accepted
time: 14ms
memory: 23956kb

input:

1
666416 645656
d
j
s
g
s
b
w
x
b
z
v
m
c
o
h
a
j
v
v
l
y
i
l
n
g
x
u
q
d
m
z
q
k
n
l
c
v
n
q
b
y
g
t
c
q
i
k
b
z
i
h
e
c
b
h
e
v
a
n
c
n
z
b
g
c
n
m
f
x
q
y
b
l
h
r
a
i
g
v
e
q
k
u
e
z
q
a
a
a
c
g
d
c
d
f
n
i
d
l
d
w
i
h
p
b
a
u
n
i
e
z
l
v
l
a
y
t
k
j
y
z
r
f
c
o
f
x
w
p
y
q
a
j
v
j
n
t
f
m
j
j
z
...

output:

z

result:

ok single line: 'z'

Test #7:

score: 0
Accepted
time: 19ms
memory: 118952kb

input:

1
10 8
tahlarajyplchghlbufhsanuvbmsafotmdanvtsltpignbmcydrndrjteyjjphxzxjcsqnszqxhmcyvujrfdispekvglqxyeflsvdssvmrkfjvyydknxjcyekcstfzgpnznkupdsaesmhakazgshvycwwctjnwxhhdokcujhwnqrqyqnvfikaofgwyxfcphgpkayzzwgcmceycippdyvibeqqibhemzeucugdtwlljqejewmapdajieanbukrpeqfzlcqblbkbemvcvkdnwshnbhymextgudifvju...

output:

tahlarajyplchghlbufhsanuvbmsafotmdanvtsltpignbmcydrndrjteyjjphxzxjcsqnszqxhmcyvujrfdispekvglqxyeflsvdssvmrkfjvyydknxjcyekcstfzgpnznkupdsaesmhakazgshvycwwctjnwxhhdokcujhwnqrqyqnvfikaofgwyxfcphgpkayzzwgcmceycippdyvibeqqibhemzeucugdtwlljqejewmapdajieanbukrpeqfzlcqblbkbemvcvkdnwshnbhymextgudifvjupdzdlne...

result:

ok single line: 'tahlarajyplchghlbufhsanuvbmsaf...zlcmnrtuhonflpulivygwfecgknnhvx'

Test #8:

score: 0
Accepted
time: 24ms
memory: 119464kb

input:

1
10 3
fbggdpqikbolemnowgfpwwouvbmhhxhecicbinhjesduugcuztgbjleluktdtbpcjfrwowpjfnkutjiffhdgygavviinleqwungdnykbnhrnccqnzbtaaouommlictujvlytueosbalqanancqjojunivkmzbhnggvraxlyowgdovaogsqdzxutwmcqwqrawlnxagzztmsxvrmhsrybddgtpboflhbbojoiolrhmhrvgyxuputssivbrlsdxvwbraxxtgugamtcorgeiazpvomjlkefldsvntaxpf...

output:

fbggdpqikbolemnowgfpwwouvbmhhxhecicbinhjesduugcuztgbjleluktdtbpcjfrwowpjfnkutjiffhdgygavviinleqwungdnykbnhrnccqnzbtaaouommlictujvlytueosbalqanancqjojunivkmzbhnggvraxlyowgdovaogsqdzxutwmcqwqrawlnxagzztmsxvrmhsrybddgtpboflhbbojoiolrhmhrvgyxuputssivbrlsdxvwbraxxtgugamtcorgeiazpvomjlkefldsvntaxpfaxlmbsj...

result:

ok single line: 'fbggdpqikbolemnowgfpwwouvbmhhx...wwjgvkuxmlyqdleytyumnytyslycfmz'

Test #9:

score: 0
Accepted
time: 20ms
memory: 61136kb

input:

1
100 64
bqrjaovelwrainyujustjcnoyqpyeuqtpwbgafxsdcmjqbgbrqkzbwejfhxswzqjjibagmdkasztqqhxsubyliuwzetglnccigmzrhxrmrrptvywyavwpkqqsyhyuhdtstkqzlqbzvpacuevwrpinfzubzjgj
bqrjaovelwrainyujustjcnoyqpyeuqfwuhsdtwgclvkdqobrrofezdyylsoddrsaxewflgjfmzreabpqstcfdmlkcfkhriuwkqfcodelppbuxxqxpanwsewtrnccauewokmq...

output:

bqrjaovelwrainyujustjcnoyqpyeuqfwuhsdtwgclvkdqobrrofezdyylsoddrsaxewflgjfmzreabpqstcfdmlkcfkhriuwkqfcodelppbuxxqxpanwsewtrnccauewokmqqahhykfsawtiatqczizqtmabdxqotpzhufebenhmnmbkavtbaqkpjloblntpbjhazyjtkakpeydymjnhgfsojzzucjvehkuvnefhkytpaasskzteisyylpukgkerhneqjqjkkqkigljadrneojmeyebyissomxlopckhtqz...

result:

ok single line: 'bqrjaovelwrainyujustjcnoyqpyeu...ulctwnloovccolzzlgjbonxkmtsflyq'

Test #10:

score: 0
Accepted
time: 22ms
memory: 61068kb

input:

1
1000 655
xrivmcvikmllrgissoqginwxkoqyxywrvspoagwvuycscxxldlmrszeuiiqzbcvkyvcogtqagprfubjza
xrivmcvikmllrgissoqginwxkoqyxwsgqbhhyygxeboxmuseokzosgqwekpchzsatkqlfiffshydwxtetdvwksuotvzaeosixlrlnoqdidbtocqkfwinselyycwpyxwywucccqorepmqsrncceebgbtygqrtviddhsqzpxauobucvondytzflgphhqgxkyaoihvvrqrvkbbleyn...

output:

xrivmcvikmllrgissoqginwxkoqyxwsgqbhhyygxeboxmuseokzosgqwekpchzsatkqlfiffshydwxtetdvwksuotvzaeosixlrlnoqdidbtocqkfwinselyycwpyxwywucccqorepmqsrncceebgbtwiulbxpgqmqazceacggpluxdaxnjcrvcfxzthnkvjegomnbsmbfksetqxuxukwooizgrmgupxlnspeovfiuqyndkkgrzjwxxvpjopmjhknuavonvknpcxwlcjnvrdrvvqxinzktygkkjdhdoewkwx...

result:

ok single line: 'xrivmcvikmllrgissoqginwxkoqyxw...vsirnpcffpggcsscctonqrzhktybdfd'

Test #11:

score: 0
Accepted
time: 28ms
memory: 64712kb

input:

1
100000 60101
wbpwp
wbtpv
y
wbmwmw
wk
wbi
wpr
wbmxw
wms
ttch
x
z
wld
wbmyu
e
wbmy
ywa
ws
yw
wv
wbq
ya
x
wx
zp
yl
wt
x
wbddy
wbwu
y
j
x
wbsvn
x
y
y
fwf
wc
yf
z
wcz
ys
wt
z
y
xke
zy
wbt
wbmwmvnoku
wbu
wbpikxn
wbmx
z
x
wbr
zqt
wbf
wbq
wr
y
z
ye
x
y
wtt
ys
wam
z
z
yd
wbmwzjdzk
y
z
z
wbpb
wbtua
z
z
x
z
...

output:

x

result:

ok single line: 'x'

Test #12:

score: 0
Accepted
time: 16ms
memory: 119088kb

input:

1
15 3
accbbabccbbbaacaaabaacbacccbabaacbcbbaacbcabcbcabbbaabbbacaccbcacacbacbbbccbacaaabbaacbacbaacbcbbaaccbcbccbaabcbaacaccbbbccbbbccccbbcacacabaabccacccbcabacbbbbacbcaaababbbaacaababccbcacabcbaacccaaabbbcbcbcaaacabaacaabacbcbbccaabaccbbcbabcbcbabaabbbbabbcaacacbbcbabbabccabcbbbcbbbbcbaabcbcbacaba...

output:

EMPTY

result:

ok single line: 'EMPTY'

Test #13:

score: 0
Accepted
time: 16ms
memory: 26928kb

input:

1
300005 2
dei
ytd
scz
rkd
csj
vhk
spe
vmf
dep
dhi
afl
vmyl
xfg
nno
lgg
gexx
myx
dhl
ytk
bdo
sna
znd
xkm
opt
lwm
ewr
nsdtw
pbx
rqy
dplgd
znt
sbw
lga
kvm
xfe
ewb
dpz
lyk
spo
ese
dhb
lcw
jcb
dhu
poh
lzw
kybca
ytw
sbez
eyx
pfv
sblv
gew
hcq
yvi
spy
ewn
spb
znx
xzn
klj
mna
klp
deuw
ugv
igu
sbna
yjli
lwv
...

output:

EMPTY

result:

ok single line: 'EMPTY'

Test #14:

score: 0
Accepted
time: 29ms
memory: 119840kb

input:

1
8 2
aljyvnpjccrahfrixfoayvhxhwovfhsrjubibgwlxyhoryqxqlqbbpmszyogtslzmddmwkzwhjvnazabmzqeridgsukgosptmmbemzdfaezqiqedslcjkrlhjikiyzymeulnzxpnhhpbqnbdoqybnsbhesbgqbwfwyuggfnmeiceupezyjtzxhfspwrxnynxbeizewzejejkdfenecqhymgrvdgehzvahevwasmuboqwvblgbahyykskhiqtegqqylhknpbxxspyupyjufonsatqroxunkzenqoagq...

output:

EMPTY

result:

ok single line: 'EMPTY'

Test #15:

score: 0
Accepted
time: 24ms
memory: 118960kb

input:

1
10 5
badcbbacebabaaaaedeebfddecfcdfaccdeccdaffeaddafebdbedacabebbdacffdfeefebaabcbcafafbedacfbcadacfbeabafbeafdeacbdcfafcdfbbacbcbcbedecaedffceeccdfccdebaeeabfccbfdbebacfcebcebfafcfefaddfcacadccdfcfcefebbecdebadabffffecfcdababaddeeddfeccbbffdfabddaedeebcacbadbaadfaebaaaeecadfadbdadcdbdbbcbbfdeacdf...

output:

EMPTY

result:

ok single line: 'EMPTY'

Test #16:

score: 0
Accepted
time: 23ms
memory: 118592kb

input:

1
1005 796
fcfacbaaedfebebafefcaddfcbdeaeadcefdcebaabefbcfcaeddeebabaacbabdadaacfdaafdeebccfcbbffbecebfaaebdbbbbfcdadacfdababacaaacfdfcbdfeefeffbffadffcbbedfebdeefdeeeedcebeaecdbccdecdaefcfaccbabcaebdddffefeedeeafebaceafcdbadeaddcdfeaddafaaeccddbadefadafeebeccbfbceffaaddfbbbacfdacbeadcbeedcdfbecdfab...

output:

fbdfcffefdfefdabbbaaabbbdadbaecbbbfdaeaaefadaaeaacdaeecacfeccccddbedfdacaacdbdcdcaacecbbaabdccadfafdbdbdadbebfaafaeaaaacdecefdecefccacedeabcceabcfbcdeefbcabeddaeedbdaedacbeebaccbefddcdfcbaeaddfdfadadfadcbebccfbbbdbadcecfaceeefcfaebdedebdefdfaeefcedcffaeebcecbffacdcfcefefadaafbfdbadecefbfbfdceebbfcaff

result:

ok single line: 'fbdfcffefdfefdabbbaaabbbdadbae...fadaafbfdbadecefbfbfdceebbfcaff'

Test #17:

score: 0
Accepted
time: 20ms
memory: 118748kb

input:

1
1005 23
ecdafdebadceaebcadfaddbadfcbffbfaafdefecbfbceefaeeccabdaefefddfdccbcbeaeeefdedbadfcacedfabefeabcfdfcfadddadfeeeefcfeedcdcffeaedaffcdabecaecacaebddeaabcaabcebffeecafccdadacbbecbefedeefbebddcbadfdffdfabacddcdefeebddaddfdebafeffdeecaaedafebaceedfacadcdfcbdeafaaeeefcedcfdebfcbaddbdaefceaeafdca...

output:

adbcdacebaebdabbecbfdaebffefcfeaeafdaefefcffcbeeafaeebcfeddfaaaeecbabdbebeeaffebaebbfeeeafbfbfcacbdabbcafcecadbdcdccdddabaeeaacbcdfcbddbccdcaeaeeedcfefacddcbffcefbedabddddfaaffabffcbdbeafaceaaaadabeebbdedcbcbaceffcfdcfafbaeedaabcfabecfecacecdffccbaefabebceedcaadabcfbdbaeabfdccbbbeacefedbbcfbedfddbefae

result:

ok single line: 'adbcdacebaebdabbecbfdaebffefcf...abfdccbbbeacefedbbcfbedfddbefae'

Test #18:

score: 0
Accepted
time: 22ms
memory: 61940kb

input:

1
7 2
bebadebdcebccacabcabeebeebddebcaeceeebeeeadcaccecbccbeecbacbabbedcebdecebaacbedecdbdadcdbeacbabacbdaccbeacaaedeecbadecdabcaaeeecceebeaddbedeeeedbabbdebeddaabcaeeeaeeaeedcbbbbbdabbbdebaaaedaedcbabdceadcdbaaabdecdeabcbbdcbdaceacaddabbedbcadaeaeeedaaedcbeeebebcbceabecdbbcebadadcecddbbdeecbcdbedbb...

output:

EMPTY

result:

ok single line: 'EMPTY'