Submission #332991

#TimeUsernameProblemLanguageResultExecution timeMemory
332991andrix007Red-blue table (IZhO19_stones)C++14
27 / 100
51 ms1516 KiB
#include <iostream>

using namespace std;

int t;

int main()
{
	cin >> t;
	while (t--)
	{
		int m, n;
		cin >> m >> n;
		if (m == n)
		{
			if (m & 1)
				cout << m + n / 2 << '\n';
			else
				cout << m + n / 2 - 1 << '\n';
			for (int i = 1; i <= m; i++)
			{
				for (int j = 1; j <= n / 2 + 1; j++)
					cout << '+';
				for (int j = n / 2 + 2; j <= n; j++)
					cout << '-';
				cout << '\n';
			}
		}
		else if (n > m) /// mai multe coloane decat randuri
		{
			int sum = n;
			if (m & 1)
				sum += m / 2;
			else
				sum += m / 2 - 1;
			cout << sum << '\n';
			for (int i = 1; i <= m / 2 + 1; i++)
			{
				for (int j = 1; j <= n; j++)
					cout << '-';
				cout << '\n';
			}
			for(int i = m/2+2 ; i <= m ; i++)
			{
				for (int j = 1; j <= n; j++)
					cout << '+';
				cout << '\n';
			}
		}
		else if (m > n) /// mai multe randuri decat coloane
		{
			int sum = m;
			if (n & 1)
				sum += n / 2;
			else
				sum += n / 2 - 1;
			cout << sum << '\n';
			for (int i = 1; i <= m; i++)
			{
				for (int j = 1; j <= n / 2 + 1; j++)
					cout << '+';
				for (int j = n / 2 + 2; j <= n; j++)
					cout << '-';
				cout << '\n';
			}
		}
	}
	return 0;
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...