Submission #1203402

#TimeUsernameProblemLanguageResultExecution timeMemory
1203402HappyCapybaraType Printer (IOI08_printer)C++20
100 / 100
580 ms4788 KiB
#include<bits/stdc++.h> using namespace std; string ls = ""; bool comp(string a, string b){ int x = 0; while (true){ if (x == a.size()) return 1; if (x == b.size()) return 0; if (a[x] != b[x]){ if (a[x] == ls[x]) return 0; if (b[x] == ls[x]) return 1; return a[x] < b[x]; } x++; } } signed main(){ int n; cin >> n; vector<string> v; for (int i=0; i<n; i++){ string s; cin >> s; v.push_back(s); if (s.size() > ls.size()) ls = s; } sort(v.begin(), v.end(), comp); vector<char> res; string cs = ""; for (int i=0; i<n; i++){ while (cs != v[i].substr(0, cs.size())){ res.push_back('-'); cs.pop_back(); } while (cs != v[i]){ res.push_back(v[i][cs.size()]); cs += v[i][cs.size()]; } res.push_back('P'); } cout << res.size() << endl; for (char c : res) cout << c << 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...