Task: | Swapping letters |
Sender: | Wu xiaobo |
Submission time: | 2020-09-20 01:51:11 +0300 |
Language: | C++ (C++11) |
Status: | READY |
Result: | WRONG ANSWER |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.01 s | details |
#2 | ACCEPTED | 0.01 s | details |
#3 | WRONG ANSWER | 0.01 s | details |
#4 | RUNTIME ERROR | 0.12 s | details |
#5 | RUNTIME ERROR | 0.12 s | details |
#6 | RUNTIME ERROR | 0.10 s | details |
#7 | RUNTIME ERROR | 0.10 s | details |
#8 | ACCEPTED | 0.12 s | details |
#9 | ACCEPTED | 0.04 s | details |
#10 | ACCEPTED | 0.04 s | details |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:41:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < x.size(); i++) { ~~^~~~~~~~~~ input/code.cpp:65:9: warning: 'p' may be used uninitialized in this function [-Wmaybe-uninitialized] for(int p; p < m; p++){ ^~~ input/code.cpp:72:20: warning: 'i4' may be used uninitialized in this function [-Wmaybe-uninitialized] i4 += 1; ~~~^~~~ input/code.cpp:70:76: warning: 'i3' may be used uninitialized in this function [-Wmaybe-uninitialized] else if(x_letters[a][i1] > x_letters[b][i2] and y_letters[a][i3] > y_letters[b][i4]){ ^ input/code.cpp:71:20: warning: 'i2' may be used uninitialized in this function [-Wmaybe-uninitialized] i2 += 1; ~~~^~~~ input/code.cpp:66:31: warning: 'i1' may...
Code
#include <iostream> #include <vector> #include <map> #include <algorithm> using namespace std; void merge(vector<int>& nums1, vector<int>& nums2) { int m = nums1.size(); int n = nums2.size(); int last = m + n - 1; while (n) { if (m == 0) { nums1[last--] = nums2[--n]; } else if (nums2[n-1] > nums1[m-1]) { nums1[last--] = nums2[--n]; } else { nums1[last--] = nums1[--m]; } } } int main() { int n; cin >> n; char forbids[n][2]; for (int i = 0; i < n; i++) cin >> forbids[i][0] >> forbids[i][1]; string x, y; cin >> x >> y; if(x.length() != y.length()){ cout << "NO"; return 0; } map<char, vector<int> > x_letters; map<char, vector<int> > y_letters; for (int i = 0; i < x.size(); i++) { x_letters[x[i]].push_back(i); y_letters[y[i]].push_back(i); } for (int i = 0; i < n; i++) { char a, b; a = forbids[i][0]; b = forbids[i][1]; // vector<int> x_ind_a, x_ind_b, y_ind_a, y_ind_b; int m = 0; m += x_letters[a].size(); if(x_letters[a][-1] != 1000001){ x_letters[a].push_back(1000001); y_letters[a].push_back(1000001); } m += x_letters[b].size(); if(x_letters[b][-1] != 1000001){ x_letters[b].push_back(1000001); y_letters[b].push_back(1000001); } int i1, i2, i3, i4; for(int p; p < m; p++){ if(x_letters[a][i1] < x_letters[b][i2] and y_letters[a][i3] < y_letters[b][i4]){ i1 += 1; i3 += 1; } else if(x_letters[a][i1] > x_letters[b][i2] and y_letters[a][i3] > y_letters[b][i4]){ i2 += 1; i4 += 1; } else{ cout<<"NO"; return 0; } } } cout << "YES"; return 0; }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
5 a b b c c d d e ... |
correct output |
---|
YES |
user output |
---|
YES |
Test 2
Verdict: ACCEPTED
input |
---|
2 a b b c acbbaca cabbaac |
correct output |
---|
YES |
user output |
---|
YES |
Test 3
Verdict: WRONG ANSWER
input |
---|
2 a b b c acbbaca baccaab |
correct output |
---|
NO |
user output |
---|
YES |
Test 4
Verdict: RUNTIME ERROR
input |
---|
10 d c e b f y h q ... |
correct output |
---|
YES |
user output |
---|
(empty) |
Test 5
Verdict: RUNTIME ERROR
input |
---|
10 a i a l d a g h ... |
correct output |
---|
NO |
user output |
---|
(empty) |
Test 6
Verdict: RUNTIME ERROR
input |
---|
325 a b a e a f a g ... |
correct output |
---|
YES |
user output |
---|
(empty) |
Test 7
Verdict: RUNTIME ERROR
input |
---|
325 a c a e a g a h ... |
correct output |
---|
NO |
user output |
---|
(empty) |
Test 8
Verdict: ACCEPTED
input |
---|
0 dlkinfmdyjaofxbccwhhbxzartqwdr... |
correct output |
---|
YES |
user output |
---|
YES |
Test 9
Verdict: ACCEPTED
input |
---|
0 bxisdrdpgcsnnvhnfgimivzqpqjwqc... |
correct output |
---|
NO |
user output |
---|
NO |
Test 10
Verdict: ACCEPTED
input |
---|
0 mrwduerojcguvxzmbomfsainvqehsl... |
correct output |
---|
NO |
user output |
---|
NO |