제출 #239587

#제출 시각아이디문제언어결과실행 시간메모리
239587nicolaalexandraUnscrambling a Messy Bug (IOI16_messy)C++14
49 / 100
6 ms512 KiB
#include <bits/stdc++.h> #include "messy.h" #define DIM 300 using namespace std; string a[DIM]; int k,n,w,r; int p[DIM],v[DIM]; vector <int> sol; /*void add_element(string s){ a[++k] = s; } void compile_set(){ for (int i=1;i<=k;i++){ string s = ""; for (int j=0;j<n;j++) s += a[i][p[j]]; a[i] = s; } } int check_element(string s){ for (int i=1;i<=k;i++) if (a[i] == s) return 1; return 0; }*/ vector<int> restore_permutation (int n, int w, int r){ int i,j; string s = ""; for (i=0;i<n;i++) s += "0"; for (i=0;i<n-1;i++){ s[i] = '1'; add_element(s); } compile_set(); s = ""; for (i=0;i<n;i++){ s += "0"; sol.push_back(-1); v[i] = i; } random_shuffle (v,v+n); for (i=0;i<n;i++){ for (j=0;j<n;j++){ int bit = v[j]; if (s[bit] == '1') continue; /// incerc sa pun 1 aici s[bit] = '1'; if (j == n-1 || check_element(s)){ sol[bit] = i; break; } else s[bit] = '0'; } } for (i=0;i<n;i++){ if (sol[i] == -1){ sol[i] = n-1; break; }} return sol; }
#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...