QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#457812 | #8838. Jesse's Job | ucup-team4074# | WA | 1ms | 5644kb | C++20 | 931b | 2024-06-29 14:12:10 | 2024-06-29 14:12:11 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define fast ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
void solve();
using pii = pair<int, int>;
using db = double;
signed main(){
fast
int t = 1;
cin >> t;
for(int i = 1; i <= t; i++){
solve();
}
}
const int N = 1e6 + 10, M = N * 2, P = 998244353;
int n;
int a[N];
bool st[N];
void solve(){
cin >> n;
for(int i = 1; i <= n; i++){
cin >> a[i], st[i] = 0;
}
int k = 0;
for(int x = 1; !st[x]; x = a[x]){
st[x] = 1, k++;
}
if(k != n){
cout << n << '\n';
cout << k << '\n';
for(int i = 1; i <= n; i++){
if(st[i]){
cout << i << ' ';
}
}
cout << '\n';
}
else{
int mn = 2e9, pos = -1;
for(int i = 1; i <= n; i++){
if(mn > abs(a[i] - i) + 1){
mn = abs(a[i] - i) + 1, pos = i;
}
}
cout << n - mn << '\n';
cout << 1 << '\n';
cout << pos << '\n';
}
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 5644kb
input:
3 2 2 1 4 2 1 4 3 6 3 5 4 2 6 1
output:
0 1 1 4 2 1 2 4 1 3
result:
ok Correct (3 test cases)
Test #2:
score: -100
Wrong Answer
time: 1ms
memory: 3580kb
input:
872 6 1 5 2 6 3 4 6 5 2 1 3 4 6 4 2 1 3 4 6 2 3 1 4 5 6 6 4 5 1 6 2 3 6 6 2 3 1 4 5 5 2 1 3 4 5 6 1 2 6 4 3 5 4 2 1 4 3 6 1 6 4 2 5 3 6 6 1 3 5 4 2 6 2 1 4 5 6 3 6 3 4 1 5 6 2 6 4 1 5 3 2 6 6 5 2 1 6 3 4 6 4 1 6 2 5 3 6 5 1 3 6 2 4 6 6 2 5 4 3 1 6 6 2 5 3 1 4 6 5 2 4 1 3 6 6 6 1 3 2 4 5 6 2 3 4 6 5 ...
output:
6 1 1 6 4 1 3 4 5 4 2 1 2 6 3 1 2 3 6 4 1 3 4 6 6 4 1 4 5 6 5 2 1 2 6 1 1 4 2 1 2 6 1 1 6 3 1 2 6 6 2 1 2 6 2 1 3 6 5 1 2 3 4 5 6 3 1 3 5 6 3 1 2 4 6 3 1 2 5 6 2 1 6 6 5 1 3 4 5 6 6 4 1 3 4 5 6 5 1 2 4 5 6 6 5 1 2 3 4 6 6 5 1 2 3 5 6 6 2 1 4 4 1 2 6 2 1 3 6 1 1 6 1 1 6 1 1...
result:
wrong answer Jury found better answer than participant (test case 143)