QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#809886#9871. Just another Sorting Problemucup-team191#WA 1ms5688kbC++23762b2024-12-11 18:03:572024-12-11 18:03:58

Judging History

你现在查看的是最新测评结果

  • [2024-12-11 18:03:58]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:5688kb
  • [2024-12-11 18:03:57]
  • 提交

answer

#include <cstdio>
#include <iostream>

using namespace std;

const int N = 1e6 + 500;

int n, p[N], bio[N], cookie;
string player;

int cycles() {
	cookie++;
	int ans = 0;
	for(int i = 0;i < n;i++) {
		if(bio[i] == cookie) continue;
		ans++;
		int cur = i;
		while(bio[cur] != cookie) {
			bio[cur] = cookie;
			cur = p[cur];
		}
	}
	return ans;
}

int main() {
	ios_base::sync_with_stdio(false); cin.tie(0);
	int T; cin >> T;
	for(;T--;) {
		cin >> n >> player;
		for(int i = 0;i < n;i++) cin >> p[i], p[i]--;
		if(n == 2) {
			cout << "Alice\n";
		} else if(player == "Alice"){
			if(cycles() == n - 1) {
				cout << "Alice\n";
			} else {
				cout << "Bob\n";
			}
		} else {
			cout << "Bob\n";
		}
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 5632kb

input:

3
2 Alice
2 1
3 Bob
1 3 2
10 Bob
1 2 3 4 5 6 7 8 10 9

output:

Alice
Bob
Bob

result:

ok 3 lines

Test #2:

score: 0
Accepted
time: 1ms
memory: 5628kb

input:

2
2 Alice
2 1
2 Bob
2 1

output:

Alice
Alice

result:

ok 2 lines

Test #3:

score: -100
Wrong Answer
time: 1ms
memory: 5688kb

input:

10
3 Bob
2 3 1
3 Alice
3 1 2
3 Bob
3 1 2
3 Alice
1 3 2
3 Alice
3 2 1
3 Bob
2 1 3
3 Bob
1 3 2
3 Alice
2 1 3
3 Alice
2 3 1
3 Bob
3 2 1

output:

Bob
Bob
Bob
Alice
Alice
Bob
Bob
Alice
Bob
Bob

result:

wrong answer 1st lines differ - expected: 'Alice', found: 'Bob'