답안 #259589

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
259589 2020-08-08T03:26:42 Z cheeheng Secret Permutation (RMI19_permutation) C++14
15 / 100
5000 ms 384 KB
#include "permutation.h"
#include <bits/stdc++.h>
using namespace std;

int tempV[10005][505];
int temp[10005];

void solve(int N){
    vector<int> V;
    vector<int> P;
    for(int i = 1; i <= N; i ++){
        V.push_back(i);
        P.push_back(i);
    }

    //printf("P.size() = %d\n", (int)P.size());

    for(int i = 0; i < N; i ++){
        random_shuffle(V.begin(), V.end());
        temp[i] = query(V);
        for(int j = 0; j < N; j ++){
            tempV[i][j] = V[j];
        }
    }

    sort(P.begin(), P.end());

    do{
        bool boleh = true;
        for(int j = 0; j < N; j ++){
            int tempAns = 0;
            for(int i = 0; i < N-1; i ++){
                tempAns += abs(P[tempV[j][i]-1] - P[tempV[j][i + 1]-1]);
            }
            if(tempAns != temp[j]){
                boleh = false;
                break;
            }
        }

        /*
        for(int k: P){
            printf("%d ", k);
        }
        printf("\n");
        */

        if(boleh){
            answer(P);
        }
    }while(next_permutation(P.begin(), P.end()));
    return;
}

Compilation message

stub.cpp: In function 'int query(int*)':
stub.cpp:15:9: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   fscanf(stdin, "%d", &x);
   ~~~~~~^~~~~~~~~~~~~~~~~
stub.cpp: In function 'int main(int, char**)':
stub.cpp:48:9: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   fscanf(stdin, "%d", &N);
   ~~~~~~^~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 0 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 0 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Execution timed out 5058 ms 384 KB Time limit exceeded
8 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 0 ms 384 KB Output is correct
4 Correct 0 ms 384 KB Output is correct
5 Correct 0 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Execution timed out 5058 ms 384 KB Time limit exceeded
8 Halted 0 ms 0 KB -