View Code of Problem 10

#include <stdio.h>
#include <stdlib.h>
#include<ctype.h>
#include<string.h>
#include<math.h>
#include<stdbool.h>
int main()
{
	int n, i, j, k;
	scanf("%d", &n);
	int a[4];
	while (n--)
	{
		for (i = 0; i < 4; i++)
			scanf("%d", &a[i]);
		for (i = 3; i > 0; i--)
		{
			if (a[i] != 0 && a[i - 1] == a[i])
			{
				a[i] = a[i] + a[i];
				a[i - 1] = 0;
			}
		}
		for (i = 3; i > 0; i--)
		{
			if (a[i] == 0)
			{
				for (j = i; j >= 0; j--)
				{
					if (a[j] != 0)
					{
						a[i] = a[j];
						a[j] = 0;
						break;
					}
				}
			}

		}
		printf("%d %d %d %d\n", a[0], a[1], a[2], a[3]);
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 10