Submission #125076

#TimeUsernameProblemLanguageResultExecution timeMemory
125076luciocfMini tetris (IOI16_tetris)C++14
100 / 100
5 ms504 KiB
#include <bits/stdc++.h>
#include "tetris.h"

using namespace std;

int type;

void init(int n) 
{
	type = 0;
}

int position;
int rotation;

void new_figure(int figure)
{
	if (type == 0)
	{
		if (figure == 1)
		{
			position = rotation = 0;
			type = 0;
		}
		if (figure == 2)
		{
			position = rotation = 0;
			type = 2;
		}
		if (figure == 3)
		{
			position = rotation = 0;
			type = 1;
		}
	}
	else if (type == 1)
	{
		if (figure == 1)
		{
			position = rotation = 0;
			type = 1;
		}
		if (figure == 2)
		{
			position = 1, rotation = 0;
			type = 2;
		}
		if (figure == 3)
		{
			position = 1, rotation = 2;
			type = 0;
		}
	}
	else if (type == 2)
	{
		if (figure == 1)
		{
			position = rotation = 0;
			type = 2;
		}
		else if (figure == 2)
		{
			position = 2, rotation = 1;
			type = 4;
		}
		else if (figure == 3)
		{
			position = 1, rotation = 2;
			type = 3;
		}
	}
	else if (type == 3)
	{
		if (figure == 1)
		{
			position = rotation = 0;
			type = 3;
		}
		else if (figure == 2)
		{
			position = 0, rotation = 1;
			type = 5;
		}
		else if (figure == 3)
		{
			position = 0, rotation = 3;
			type = 2;
		}
	}
	else if (type == 4)
	{
		if (figure == 1)
		{
			position = rotation = 0;
			type = 4;
		}
		else if (figure == 2)
		{
			position = rotation = 0;
			type = 0;
		}
		else if (figure == 3)
		{
			position = rotation = 0;
			type = 5;
		}
	}
	else
	{
		if (figure == 1)
		{
			position = rotation = 0;
			type = 5;
		}
		else if (figure == 2)
		{
			position = 1, rotation = 0;
			type = 0;
		}
		else if (figure == 3)
		{
			position = rotation = 1;
			type = 4;
		}
	}
}

int get_position()
{
	return position;
}

int get_rotation() 
{
	return rotation;
}

#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...