Task: | Järjestäminen |
Sender: | AtskaFin |
Submission time: | 2021-01-23 17:47:07 +0200 |
Language: | C++ (C++17) |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | WRONG ANSWER | 0 |
#2 | WRONG ANSWER | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | WRONG ANSWER | 0.01 s | 1, 2 | details |
#2 | WRONG ANSWER | 0.01 s | 2 | details |
#3 | WRONG ANSWER | 0.01 s | 1, 2 | details |
#4 | WRONG ANSWER | 0.01 s | 1, 2 | details |
Compiler report
input/code.cpp: In function 'void sort()': input/code.cpp:18:9: warning: 'index' may be used uninitialized in this function [-Wmaybe-uninitialized] int index; ^~~~~
Code
#include <iostream>#include <vector>using namespace std;vector<int> v;int n;void swap(int a, int b) {int tmp = v[a];v[a] = v[b];v[b] = tmp;}void sort() {for (int i = 1; i <= n-4; i++) {int index;for (int j = 0; j < n; j++) {if (v[j] == i) {index = j;break;}}if (index < n-1) {// käännä niin että luku ensimmäinen parissaswap(i-1, index);swap(i, index+1);} else {// käännä niin että luku toinen parissa// index-3, index-2, index-1, index, index+1// 1 2 3 4// 3 4 1 2// uusi index = index - 2swap(index, index - 2);swap(index - 1, index - 3);swap(i-1, index-2);swap(i, index-1);}/*6 7 8*/}if (v[n-1] != n) {swap(n-1, n-3);swap(n-2, n-4);}}int main() {ios_base::sync_with_stdio(0);cin.tie(0);int t; cin >> t;for (int ddd = 0; ddd < t; ddd++) {cin>>n;v.clear();v.resize(n);for (int i = 0; i < n; i++) cin >> v[i];if (n == 1) {cout << "YES";} else if (n == 2) {if (v[0] == 1) {cout << "YES";} else {cout << "NO";}} else if (n == 3) {if (v[0] == 1 && v[1] == 2) {cout << "YES";} else {cout << "NO";}} else if (n == 4) {if ((v[0] == 1 && v[1] == 2 && v[2] == 3 && v[3] == 4)|| (v[0] == 3 && v[1] == 4 && v[2] == 1 && v[3] == 2)) {cout << "YES";} else {cout << "NO";}} else {sort();bool sorted = true;for (int i = 0; i < n; i++) {if (v[i] != i+1) sorted = false;}if (sorted) {cout << "YES";} else {cout << "NO";}}cout << "\n";}}
Test details
Test 1
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
153 1 1 2 1 2 ... |
correct output |
---|
YES YES NO NO NO ... |
user output |
---|
YES YES NO NO NO ... Truncated |
Test 2
Group: 2
Verdict: WRONG ANSWER
input |
---|
1000 59 35 29 32 50 11 15 9 21 19 45 2... |
correct output |
---|
YES NO YES NO YES ... |
user output |
---|
NO NO YES NO NO ... Truncated |
Test 3
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
720 6 1 6 4 5 2 3 6 6 3 2 1 5 4 ... |
correct output |
---|
YES NO NO NO YES ... |
user output |
---|
NO NO NO NO YES ... Truncated |
Test 4
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
1000 8 7 4 2 8 6 3 5 1 8 3 8 2 7 5 4 6 1 ... |
correct output |
---|
NO NO YES NO YES ... |
user output |
---|
NO NO NO NO NO ... Truncated |