답안 #599434

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
599434 2022-07-19T14:08:00 Z PiejanVDC 정렬하기 (IOI15_sorting) C++17
0 / 100
1 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>v(n);
    for(int i = 0 ; i < n ; i++)
        v[s[i]] = i;

    auto sorted = [&] () -> bool {
        for(int i = 0 ; i < n ; i++)
            if(s[i] != i)
                return 0;
        return 1;
    };

    int cnt = 0;
    for(int i = 2 ; i < n ; i++) {
        if(sorted())
            return cnt;
        cnt++;
        P[cnt] = i, Q[cnt] = v[i];
        swap(v[i], v[s[i]]);
        swap(s[i], s[v[s[i]]]);
        swap(v[s[0]], v[s[1]]);
        swap(s[0], s[1]);
    }
    if(!sorted())
        cnt++, P[cnt] = 0, Q[cnt] = 1;
    return cnt;
}

Compilation message

sorting.cpp: In function 'int findSwapPairs(int, int*, int, int*, int*, int*, int*)':
sorting.cpp:5:39: warning: unused parameter 'm' [-Wunused-parameter]
    5 | int findSwapPairs(int n, int s[], int m, int X[], int Y[], int P[], int Q[]) {
      |                                   ~~~~^
sorting.cpp:5:46: warning: unused parameter 'X' [-Wunused-parameter]
    5 | int findSwapPairs(int n, int s[], int m, int X[], int Y[], int P[], int Q[]) {
      |                                          ~~~~^~~
sorting.cpp:5:55: warning: unused parameter 'Y' [-Wunused-parameter]
    5 | int findSwapPairs(int n, int s[], int m, int X[], int Y[], int P[], int Q[]) {
      |                                                   ~~~~^~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 296 KB Output is correct
2 Correct 1 ms 304 KB Output is correct
3 Incorrect 1 ms 300 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 296 KB Output is correct
2 Correct 1 ms 304 KB Output is correct
3 Incorrect 1 ms 300 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 304 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Incorrect 0 ms 340 KB Output isn't correct
6 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 296 KB Output is correct
2 Correct 1 ms 304 KB Output is correct
3 Incorrect 1 ms 300 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -