Submission #1057740

# Submission time Handle Problem Language Result Execution time Memory
1057740 2024-08-14T04:42:02 Z 1ne Unscrambling a Messy Bug (IOI16_messy) C++14
0 / 100
1 ms 604 KB
#include <vector>
#include "messy.h"
#include <bits/stdc++.h>
using namespace std;
std::vector<int> restore_permutation(int n, int w, int r) {
	 string s;
	 for (int i = 0;i<n;++i){
	 	s+='0';
	 }
	 for (int i  = 0;i<n;++i){
	 	s[i] = '1';
	 	add_element(s);
	 }
    compile_set();
  	 vector<int>pos(n,-1);
  	 string cur;
  	 for (int i = 0;i<n;++i){
  	 	cur+='0';
  	 }                            
  	 for (int i = 0;i<n;++i){
  	 	int left = 0,right = n - 1,ps = -1;
  	 	while(left<=right){
  	 		int mid = (left + right)>>1;
  	 		string new_cur = cur;
  	 		for (int j = 0;j<=mid;++j){
  	 			new_cur[j] = '1';
  	 		}
  	 		if (check_element(new_cur)){
  	 			right = mid - 1;
  	 			ps = mid;
  	 		}
  	 		else{
  	 			left = mid + 1;
  	 		}
  	 	}
  	 	//cur_bit is in the region between 0...pos
  	 	//pos is not the last bit of the given bits of numbers
  	 	//
    	for (int j = 0;j<=ps;++j){
    		if (cur[j] == '1')continue;
    		cur[j] = '1';
    		if (check_element(cur)){
    			pos[i] = j;
    			break;		
    		}
    		cur[j] = '0';	
    	 }
  	 }
  	 vector<int>inv(n);
  	 for (int i = 0;i<n;++i){
  	 	inv[pos[i]] = i;
  	 }
    return inv;
}
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 344 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 348 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 604 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB grader returned WA
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB grader returned WA
2 Halted 0 ms 0 KB -