Cod sursa(job #418450)

Utilizator nandoLicker Nandor nando Data 15 martie 2010 21:42:40
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <cstdio>
#include <vector>

using namespace std;

FILE* fin=fopen("multimi2.in","r");
FILE* fout=fopen("multimi2.out","w");

int n,r;
vector<int>a,b;

int main(){
	fscanf(fin,"%u",&n);
	int off=n%4;
	if(off==1){
		a.push_back(1),r=1;
	}else if(off==2){
		a.push_back(1);
		b.push_back(2);
		r=1;
	}else if(off==3){
		a.push_back(1),a.push_back(2),b.push_back(3),r=0;
	}
	off++;
	for(int i=0;i<n/4;i++){
		a.push_back(off+i*4);
		b.push_back(off+i*4+1);
		b.push_back(off+i*4+2);
		a.push_back(off+i*4+3);
	}
	fprintf(fout,"%u\n%u\n",r,a.size());
	for(int i=0;i<a.size();i++){
		fprintf(fout,"%u ",a[i]);
	}
	fprintf(fout,"\n%u\n",b.size());
	for(int i=0;i<b.size();i++){
		fprintf(fout,"%u ",b[i]);
	}
	fclose(fin);
	fclose(fout);
	return 0;
}