View Code of Problem 10

#include<iostream>
using namespace std;

int main(void){
	int n;
	cin>>n;
	while(n--){
		int a[4],k=0;
		cin>>a[0]>>a[1]>>a[2]>>a[3];
		for(int j=3;j>=0;j--){
			if(a[j]==0){
				k++;
			}else if(a[j]!=0&&k!=0){
				a[j+k]=a[j];
				a[j]=0;
			}
		}
		for(int i=3;i>=0;i--){
			for(int j=i-1;j>=0;j--){
				if(a[j]==a[i]&&a[j]>0){
					a[i]*=2;
					a[j]=0;
					break;
				}
			}
		}
		k=0;
		for(int j=3;j>=0;j--){
			if(a[j]==0){
				k++;
			}else if(a[j]!=0&&k!=0){
				a[j+k]=a[j];
				a[j]=0;
			}
		}
		cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<" "<<a[3]<<endl;
	}
}

Double click to view unformatted code.


Back to problem 10