Submission #795603

# Submission time Handle Problem Language Result Execution time Memory
795603 2023-07-27T11:37:10 Z Josia Sorting (IOI15_sorting) C++17
0 / 100
2 ms 340 KB
#include "sorting.h"
#include <bits/stdc++.h>
using namespace std;
 
int findSwapPairs(int N, int _S[], int M, int X[], int Y[], int P[], int Q[]) {
	vector<int> S(N);
	for (int i = 0; i<N; i++) S[i] = _S[i];

    int count = 0;

    if (is_sorted(S.begin(), S.end())) return count;
    for (int i = 2; i<N; i++) {
        if (S[i] == i) {
            P[count]=0;
            Q[count]=0;
            count++;
            continue;
        }
		swap(S[X[count]], S[Y[count]]);


		for (int j = 0; j<N; j++) {
			if (S[j] == i) {
				swap(S[j], S[i]);
				P[count]=i;
				Q[count]=j;
                count++;
				break;
			}
		}
        if (is_sorted(S.begin(), S.end())) return count;
	}
	
	swap(S[X[count]], S[Y[count]]);
	if (S[0] == 0) {P[count]=0;Q[count]=0;}
	else {P[count]=0;Q[count]=1;}
    count++;
	
	return count;
}

Compilation message

sorting.cpp: In function 'int findSwapPairs(int, int*, int, int*, int*, int*, int*)':
sorting.cpp:5:40: warning: unused parameter 'M' [-Wunused-parameter]
    5 | int findSwapPairs(int N, int _S[], int M, int X[], int Y[], int P[], int Q[]) {
      |                                    ~~~~^
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Incorrect 0 ms 212 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Incorrect 0 ms 212 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 0 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Incorrect 0 ms 212 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -