1583

#include <iostream>
#include <algorithm>
#include <vector>
#include <map>

#define lld long long

using namespace std;
int n;

int digit_generator(int num)
{
	int r=num;

	while(num)
	{
		r+=(num%10);
		num/=10;
	}

	if(r==n)
	return r;
	else
	return 0;
}

int main()
{
	int t;

	cin>>t;

	while(t--)
	{
		cin>>n;

		if(n==11)
		{
			cout<<10<<"\n";
			continue;
		}
		if(n<10)
		{
			if(n%2==0)
			cout<<n/2<<"\n";
			else
			cout<<0<<"\n";

			continue;
		}
		if(n<100)
		{
			if(n-18<0)
			{
				int f=0;
				for(int i=1;i<(n-1);i++)
				{
					if(digit_generator(i))
					{
						f=i;
						break;
					}
				}

				if(f)
				cout<<f<<"\n";
				else
				cout<<0<<"\n";


			}
			else
			{
				int f=0;
				for(int i=n-18;i<=n;i++)
					if(digit_generator(i))
					{
						f=i;
						break;
					}

				if(f)
				cout<<f<<"\n";
				else
				cout<<0<<"\n";
			}
			continue;
		}

		if(n<1000)
		{
			int f=0;
			for(int i=n-27;i<=n;i++)
				if(digit_generator(i))
				{
					f=i;
					break;
				}

			if(f)
				cout<<f<<"\n";
			else
				cout<<0<<"\n";
			continue;
		}

		if(n<10000)
		{
			int f=0;
			for(int i=n-36;i<=n;i++)
				if(digit_generator(i))
				{
					f=i;
					break;
				}

			if(f)
				cout<<f<<"\n";
			else
				cout<<0<<"\n";
			continue;
		}

		if(n<100000)
		{
			int f=0;
			for(int i=n-45;i<=n;i++)
				if(digit_generator(i))
				{
					f=i;
					break;
				}

			if(f)
				cout<<f<<"\n";
			else
				cout<<0<<"\n";
			continue;
		}


		if(n<1000000)
		{
			int f=0;
			for(int i=n-54;i<=n;i++)
				if(digit_generator(i))
				{
					f=i;
					break;
				}

			if(f)
				cout<<f<<"\n";
			else
				cout<<0<<"\n";
			continue;
		}
	}

	return 0;
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *