Submission #833954

#TimeUsernameProblemLanguageResultExecution timeMemory
833954EllinorSorting (IOI15_sorting)C++14
36 / 100
1 ms616 KiB
//#include<bits/stdc++.h> #include <iostream> #include <vector> #include <queue> #include <string> #include <cmath> #include <cstdlib> #include <set> #include <iomanip> #include <limits> #include <map> #include <assert.h> #include <algorithm> #include <list> #include <iterator> #include <fstream> #include <random> #include <unordered_map> #include <array> using namespace std; #define rep(i,a,b) for (int i = (a); i < b; i++) #define pb push_back #define all(x) x.begin(), x.end() typedef long long ll; //typedef pair<int, int> pii; // fast vector<int> S; vector<int> at; #include "sorting.h" // !! void swap(int a, int b) { int tmp = S[a]; S[a] = S[b]; S[b] = tmp; at[S[a]] = a; at[S[b]] = b; } int findSwapPairs(int N, int ss[], int M, int X[], int Y[], int P[], int Q[]) { S.assign(N, 0); rep(i,0,N) { S[i] = ss[i]; } at.assign(N, 0); rep(i,0,N) { at[S[i]] = i; } int R = 0; rep(i,2,N) { if (S[i] != i) { swap(X[R], Y[R]); P[R] = at[i]; Q[R] = i; swap(at[i], i); R++; } } if (S[0] != 0) { swap(X[R], Y[R]); if (S[0] != 0) { P[R] = at[0]; Q[R] = 0; swap(at[0], 0); } else { P[R] = 0; Q[R] = 0; //swap(0, 0); } R++; } rep(i,0,N) if(S[i] != i) assert(0 == 1); return R; } // 20p, 0, 0 // 16p, 0, 1, first all else, then 1 -> 1 (if needed)

Compilation message (stderr)

sorting.cpp: In function 'int findSwapPairs(int, int*, int, int*, int*, int*, int*)':
sorting.cpp:45:40: warning: unused parameter 'M' [-Wunused-parameter]
   45 | int findSwapPairs(int N, int ss[], int M, int X[], int Y[], int P[], int Q[])
      |                                    ~~~~^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...