답안 #861269

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
861269 2023-10-15T18:31:55 Z Ahmed57 Cat (info1cup19_cat) C++17
0 / 100
27 ms 600 KB
#include <bits/stdc++.h>

using namespace std;
int main(){
    int t;cin>>t;
    z:while(t--){
        int n;cin>>n;
        int arr[n+1],pos[n+1];
        for(int i = 1;i<=n;i++){
            cin>>arr[i];pos[arr[i]] = i;
        }
        int g = 0;
        for(int i = 1;i<=n/2;i++){
            if((arr[i]!=i)^(arr[n-i+1]!=n-i+1)){
                cout<<-1<<endl;
                goto z;
            }
        if(arr[i]==i)continue;
            if(!((arr[i]>i)^(arr[n-i+1]>n-i+1))){
                cout<<-1<<endl;
                goto z;
            }
            if(arr[i]!=i)g++;
        }
        int e = 0;
        for(int i = 1;i<=n;i++){
            int x = pos[i];
            if(arr[i]==i)continue;
            if(arr[n-i+1]==n-x+1&&arr[n-x+1]==n-i+1&&arr[x]==i){
                e++;
            }
        }
        cout<<g-(e/4)<<" "<<0<<endl;
    }
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 7 ms 600 KB Wrong answer
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 27 ms 348 KB Wrong answer
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 7 ms 600 KB Wrong answer
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 27 ms 348 KB Wrong answer
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 7 ms 600 KB Wrong answer
2 Halted 0 ms 0 KB -