Task: | Word Worries |
Sender: | Olli |
Submission time: | 2018-09-06 18:10:11 +0300 |
Language: | C++ |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.02 s | details |
#2 | ACCEPTED | 0.01 s | details |
#3 | ACCEPTED | 0.03 s | details |
#4 | ACCEPTED | 0.03 s | details |
#5 | ACCEPTED | 0.01 s | details |
#6 | ACCEPTED | 0.01 s | details |
#7 | ACCEPTED | 0.01 s | details |
#8 | ACCEPTED | 0.03 s | details |
#9 | ACCEPTED | 0.06 s | details |
#10 | ACCEPTED | 0.07 s | details |
#11 | ACCEPTED | 0.10 s | details |
#12 | ACCEPTED | 0.09 s | details |
#13 | ACCEPTED | 0.09 s | details |
#14 | ACCEPTED | 0.10 s | details |
#15 | ACCEPTED | 0.08 s | details |
#16 | ACCEPTED | 0.06 s | details |
#17 | ACCEPTED | 0.07 s | details |
#18 | ACCEPTED | 0.09 s | details |
#19 | ACCEPTED | 0.08 s | details |
#20 | ACCEPTED | 0.07 s | details |
Compiler report
input/code.cpp: In function 'int comp(std::__cxx11::string, std::__cxx11::string)': input/code.cpp:13:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int j = 0; j < a.length(); ++j) { ~~^~~~~~~~~~~~
Code
#include <iostream> #include <vector> #include <algorithm> using namespace std; const int N = 1e5 + 5; vector<string> v; int comp(string a, string b) { for(int j = 0; j < a.length(); ++j) { int k = (int) a[j]; int n = (int) b[j]; if(k < n) { return 1; } else if (k > n) { return -1; } } return 0; } int main() { int n, m; cin >> n >> m; for(int i = 1; i <= n; ++i) { string s; cin >> s; v.push_back(s); } sort(v.begin(), v.end()); int ans = 0; int k = 0; for(int i = 0; i < n; ++i) { if(v[i] == v[0]) { ++ans; k = i; } else { break; } } string a = v[0]; for(int j = 0; j < m; ++j) { if(a[j] != 'z') { a[j] = 'z'; break; } } for(int i = k + 1; i < n; ++i) { //Check if v[i] can be first if(k == 0) { if(comp(a, v[i]) != 1) { if(comp(v[i], v[k+1]) == 0) { ++ans; continue; } } } string b = v[i]; for(int j = 0; j < m; ++j) { if(b[j] != 'a') { b[j] = 'a'; break; } } if(comp(b, v[0]) != -1) { ++ans; } } cout << ans << "\n"; }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
4 2 aa bb za zz |
correct output |
---|
3 |
user output |
---|
3 |
Test 2
Verdict: ACCEPTED
input |
---|
1 1 a |
correct output |
---|
1 |
user output |
---|
1 |
Test 3
Verdict: ACCEPTED
input |
---|
2 1 a a |
correct output |
---|
2 |
user output |
---|
2 |
Test 4
Verdict: ACCEPTED
input |
---|
3 10 aaaaaaaaaa aaaaaaaaab aaaaaaaabb |
correct output |
---|
2 |
user output |
---|
2 |
Test 5
Verdict: ACCEPTED
input |
---|
2 2 bb zz |
correct output |
---|
2 |
user output |
---|
2 |
Test 6
Verdict: ACCEPTED
input |
---|
26 1 a b c d ... |
correct output |
---|
26 |
user output |
---|
26 |
Test 7
Verdict: ACCEPTED
input |
---|
676 2 aa ab ac ad ... |
correct output |
---|
51 |
user output |
---|
51 |
Test 8
Verdict: ACCEPTED
input |
---|
17576 3 aaa aab aac aad ... |
correct output |
---|
76 |
user output |
---|
76 |
Test 9
Verdict: ACCEPTED
input |
---|
59049 10 aaaaaaaaaa aaaaaaaaab aaaaaaaaac aaaaaaaaba ... |
correct output |
---|
21 |
user output |
---|
21 |
Test 10
Verdict: ACCEPTED
input |
---|
100000 10 aaaaaaaaaa aaaaaaaaaa aaaaaaaaaa aaaaaaaaaa ... |
correct output |
---|
100000 |
user output |
---|
100000 |
Test 11
Verdict: ACCEPTED
input |
---|
100000 10 bbcacccbbb babccccaaa cacababbbc cabcbabbac ... |
correct output |
---|
33 |
user output |
---|
33 |
Test 12
Verdict: ACCEPTED
input |
---|
100000 10 bbbabacbbc baaabaccab caccbabacb caccbacaaa ... |
correct output |
---|
34 |
user output |
---|
34 |
Test 13
Verdict: ACCEPTED
input |
---|
100000 10 mounucjzsy zzdwsalxux itasczrpmj xyxuntyyuq ... |
correct output |
---|
3 |
user output |
---|
3 |
Test 14
Verdict: ACCEPTED
input |
---|
100000 10 poohklgguz poetpdbthy gtresaphti nkydtirzrl ... |
correct output |
---|
77 |
user output |
---|
77 |
Test 15
Verdict: ACCEPTED
input |
---|
100000 7 aaacaca bcabcbc accbccb bcaacbc ... |
correct output |
---|
685 |
user output |
---|
685 |
Test 16
Verdict: ACCEPTED
input |
---|
100000 1 h w e q ... |
correct output |
---|
100000 |
user output |
---|
100000 |
Test 17
Verdict: ACCEPTED
input |
---|
100000 2 li bf fl ji ... |
correct output |
---|
15836 |
user output |
---|
15836 |
Test 18
Verdict: ACCEPTED
input |
---|
100000 6 macdpa cfcobd eknabl dadhan ... |
correct output |
---|
61 |
user output |
---|
61 |
Test 19
Verdict: ACCEPTED
input |
---|
100000 4 bubq xvga owhf ciib ... |
correct output |
---|
19 |
user output |
---|
19 |
Test 20
Verdict: ACCEPTED
input |
---|
100000 4 vwvw wxxx vvvx wvxv ... |
correct output |
---|
100000 |
user output |
---|
100000 |