Submission #318162

#TimeUsernameProblemLanguageResultExecution timeMemory
318162NintsiChkhaidze슈퍼트리 잇기 (IOI20_supertrees)C++14
11 / 100
253 ms22244 KiB
#include "supertrees.h"
#include <iostream>
#include <vector>
#define pb push_back
using namespace std;
 
int construct(vector<vector<int>> p) {
    int n = p.size(),r=0;
    vector<vector<int>> answer;
    
    bool q=1;
    for(int i=0;i<n;i++){
        for (int j=0;j<n;j++){
            if (p[i][j] == 1) r++;
            if (p[i][i] != 1) q=0;
        }
    }
    
    if (!q) return 0;
    if (r == n*n) {
        for (int i=0;i<n;i++){
            vector<int> row;
            row.clear();
            for (int j=0;j<n;j++){
                if (j == i + 1 || j == i - 1) row.pb(1);
                else row.pb(0);
            }
            answer.push_back(row);
        }
        build(answer);
        return 1;
    }
    
    for (int i = 0; i < n; i++) {
        vector<int> row;
        row.resize(n);
        answer.push_back(row);
    }
    build(answer);
    return 1;
}
#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...