Submission #783093

#TimeUsernameProblemLanguageResultExecution timeMemory
783093AndreyCat (info1cup19_cat)C++14
40 / 100
189 ms1548 KiB
#include <bits/stdc++.h> using namespace std; void solve() { int n,a,br = 0,y,b; cin >> n; vector<int> p(n+1); for(int i = 1; i <= n; i++) { cin >> a; p[a] = i; } for(int i = 1; i <= n/2; i++) { if(p[i] > p[n-i+1]) { br++; } if(p[i] != n-p[n-i+1]+1) { cout << -1 << "\n"; return; } } if(br%2) { cout << -1 << "\n"; return; } br = 0; for(int i = 1; i <= n; i++) { y = i; while(p[y] != y && p[y] != n-y+1) { a = y; b = p[y]; swap(p[a],p[b]); swap(p[n-a+1],p[n-b+1]); br++; } } for(int i = 1; i <= n/2; i++) { if(p[i] == n-i+1) { br++; } } cout << br << " " << 0 << "\n"; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int t; cin >> t; while(t--) { solve(); } return 0; }
#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...