Submission #523360

#TimeUsernameProblemLanguageResultExecution timeMemory
523360amunduzbaevAncient Machine (JOI21_ancient_machine)C++17
70 / 100
81 ms8544 KiB
#include "Anna.h"
#include "bits/stdc++.h"
using namespace std;

#define ar array

void Anna(int n, vector<char> s) {
	int f = -1;
	for(int i=0;i<n;i++){
		if(s[i] == 'X') { f = i; break; }
	}
	
	if(f == -1) return;
	vector<int> res(n);
	res[f] = 1;
	for(int i=f+1;i<n;i++){
		if(s[i] == 'Z') res[i] = 1;
	}
	
	for(int i=0;i<n;i++) Send(res[i]);
}
#include "Bruno.h"
#include "bits/stdc++.h"
using namespace std;

void Bruno(int n, int l, vector<int> a) {
	auto add = [&](int l, int r){
		for(int i=l;i<=r;i++) Remove(i);
	};
	if(!l) { add(0, n - 1); return; }
	int f = -1, last = -1;
	for(int i=0;i<n;i++){
		if(~f){
			if(a[i]){
				for(int j=i-1;j>last;j--) Remove(j);
				Remove(i);
				last = i;
			}
		} else {
			if(a[i]) f = i, last = i;
			else Remove(i);
		}
	}
	
	for(int j=n-1;j>last;j--) Remove(j);
	Remove(f);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...