~cpp
#include <iostream>
using namespace std;
int GetFunctionY(int x)
{
	//4n^2 - 8n + 5
	return (4 * x * x) - (8 * x) + 5;
}
void Calculate(int& x, int& y, int remain)
{
	const int PLUS_X[4] = {+0, -1, +1, +0};
	const int PLUS_Y[4] = {+1, +0, +0, -1};
	int endNumber = x - 1;
	int gab = 0;
	for (register int num = 0; num < 2; ++num)
	{
		for (register int j = 0 + gab; j < 2 + gab; ++j)
		{
			for (register int i = 0; i < endNumber; ++i)
			{
				--remain;
				if (0 == remain)
					return;
				x += PLUS_X[j];
				y += PLUS_Y[j];
			}
		}
		--remain;
		if (0 == remain)
			return;
		++y;
		++endNumber;
		gab = 2;
	}
}
void main()
{
	int inputNumber;
	cin >> inputNumber;
	int pointX = 1;
	int pointY = 1;
	register int i = 1;
	if (1 == inputNumber)
	{
		cout << "(1, 1)" << endl;
		return;
	}
	while(1)
	{
		if (inputNumber < GetFunctionY(i))
		{
			pointX = (i - 2) * 2 + 1;
			break;
		}
		++i;
	}
	Calculate(pointX, pointY, inputNumber - GetFunctionY(i - 1) + 1);
	cout << "(" << pointX << ", " << pointY << ")" << endl;
}