Submission #1239242

#TimeUsernameProblemLanguageResultExecution timeMemory
1239242moondarksideToy Train (IOI17_train)C++20
Compilation error
0 ms0 KiB
#include<bits/stdc++.h>
using namespace std;



std::vector<int> who_wins(std::vector<int> a, std::vector<int> r, std::vector<int> u, std::vector<int> v) {

	vector<vector<int>> Next(a.size());
	vector<vector<int>> NextInv(a.size());

	int n=a.size();

	std::vector<int> rC=r;
	for(int sur=0; sur<n; sur++) {
		vector<int> prc=rC;
		rC=r;

		bool camb=true;
		for(int ronda=0; ronda<n && camb; ronda++) {
			camb=false;
			for(int i=0; i<n; i++) {
				if(rC[i]!=1) {
					if(a[i]==1) {
						for(int j=0; j<Next[i].size(); j++) {
							if(rC[Next[i][j]]==1) {
								rC[i]=1;
								camb=true;
							}

						}

					}
					else {
						int ns=1;
						for(int j=0; j<Next[i].size(); j++) {
							ns=ns*rC[Next[i][j]];

						}
						if(ns==1) {
							camb=true;
						}
						rC[i]=ns;
					}
				}

			}

		}

        camb=true;
		for(int ronda=0; ronda<n && camb; ronda++) {
            camb=false;
			for(int i=0; i<n; i++) {
				if(rC[i]==1) {
					if(a[i]==0) {
						for(int j=0; j<Next[i].size(); j++) {
							if(rC[Next[i][j]]==0) {
								rC[i]=0;
								camb=true;
							}

						}

					}
					else {
						int ns=1;
						for(int j=0; j<Next[i].size(); j++) {
							ns=ns*(1-rC[Next[i][j]]);

						}
						rC[i]=1-ns;
						if(1-ns==0){
						    camb=true;
						}
					}
				}

			}

		}

        bool ret=true;
		for(int i=0; i<n; i++) {
			r[i]=r[i] && rC[i];
            if(prc[i]!=rC[i]){
                ret=false;
            }

		}
		if(ret){
		    vector<int> Sol;
	        for(int i=0; i<n; i++) {
		        Sol.push_back(rC[i]);
	        }
	        return Sol;
		}

	}
	vector<int> Sol;
	        for(int i=0; i<n; i++) {
		        Sol.push_back(rC[i]);
	        }
	        return Sol;

	
}


int main()
{
	vector<int> A=who_wins((vector<int>) {
		1,1,1
	}, (vector<int>) {
		0,1,0
	}, (vector<int>) {
		0,0,1,2
	}, (vector<int>) {
		0,1,2,2
	});
	for(int i=0; i<A.size(); i++) {
		cout<<A[i]<<"\n";
	}

}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccZlLFin.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/ccvQYaiO.o:train.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status