# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
861279 | 2023-10-15T19:13:43 Z | Ahmed57 | Cat (info1cup19_cat) | C++17 | 431 ms | 23548 KB |
#include <bits/stdc++.h> using namespace std; vector<pair<int,int>> con; bool vis[200001];int arr[200001]; int main(){ ios_base::sync_with_stdio(false);cin.tie(0); int t;cin>>t; z:while(t--){ int n;cin>>n; for(int i = 1;i<=n;i++)vis[i] = 0; con.clear(); int pos[n+1]; for(int i = 1;i<=n;i++){ cin>>arr[i];pos[arr[i]] = i; } int g = 0;int lol = 0; for(int i = 1;i<=n/2;i++){ if(arr[i]!=i)g++; if(n-arr[i]+1!=arr[n-i+1]){ cout<<-1<<endl; goto z; }if(arr[i]>n/2){ lol++; } } if(lol&1){ cout<<-1<<endl; goto z; } for(int i = 1;i<=n/2;i++){ if(!vis[i]){ int st = i; vis[i] = 1; int e = arr[i]; while(vis[e]==0){ vis[e] = 1; con.push_back({e,i}); e = arr[e]; } } } cout<<con.size()<<" "<<con.size()<<"\n"; for(auto i:con)cout<<i.first<<" "<<i.second<<"\n"; } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 348 KB | Correctly distinguished between possibility and impossibility |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 18 ms | 604 KB | Output is correct |
2 | Correct | 14 ms | 604 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 348 KB | Correctly distinguished between possibility and impossibility |
2 | Correct | 18 ms | 604 KB | Output is correct |
3 | Correct | 14 ms | 604 KB | Output is correct |
4 | Correct | 19 ms | 860 KB | Correctly distinguished between possibility and impossibility |
5 | Correct | 8 ms | 600 KB | Correctly distinguished between possibility and impossibility |
6 | Correct | 6 ms | 604 KB | Correctly distinguished between possibility and impossibility |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 18 ms | 604 KB | Output is correct |
2 | Correct | 14 ms | 604 KB | Output is correct |
3 | Correct | 282 ms | 10448 KB | Output is correct |
4 | Correct | 268 ms | 9932 KB | Output is correct |
5 | Correct | 291 ms | 12408 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 348 KB | Correctly distinguished between possibility and impossibility |
2 | Correct | 18 ms | 604 KB | Output is correct |
3 | Correct | 14 ms | 604 KB | Output is correct |
4 | Correct | 19 ms | 860 KB | Correctly distinguished between possibility and impossibility |
5 | Correct | 8 ms | 600 KB | Correctly distinguished between possibility and impossibility |
6 | Correct | 6 ms | 604 KB | Correctly distinguished between possibility and impossibility |
7 | Correct | 282 ms | 10448 KB | Output is correct |
8 | Correct | 268 ms | 9932 KB | Output is correct |
9 | Correct | 291 ms | 12408 KB | Output is correct |
10 | Correct | 407 ms | 18256 KB | Correctly distinguished between possibility and impossibility |
11 | Correct | 357 ms | 14940 KB | Correctly distinguished between possibility and impossibility |
12 | Correct | 388 ms | 20552 KB | Correctly distinguished between possibility and impossibility |
13 | Correct | 431 ms | 23548 KB | Correctly distinguished between possibility and impossibility |
14 | Correct | 376 ms | 19768 KB | Correctly distinguished between possibility and impossibility |