Brain-kill

From Algopedia
Jump to navigationJump to search
/*
   Nume program   : brain-kill.c
   Nume concurent : Vlad Stanciu, Rares Cautis
*/
#include <stdio.h>
#include <stdlib.h>

int v[30];

int main()
{
    int exor,i,i2,min,p,max,k,y;
    char c;
    scanf("%d",&v[0]);
    c=fgetc(stdin);
    i=1;
    while(c!='\n'){
        scanf("%d",&v[i]);
        c=fgetc(stdin);
        i++;
    }
    i2=i;
    min=v[0];
    exor=v[0];
    for(i=1;i<i2;i++){
        exor=exor^v[i];
        if(v[i]<min)
            min=v[i];
    }
    if(exor==0)
        {
            p=0;
            max=0;
            for(p=0;p<30;p++)
                if(max<v[p]){
                    max=p;
                    k=p;
                }
            v[k]=0;
        }
    if(exor!=0)
        for(i=0;i<i2;i++)
            if(v[i]>(v[i]^exor) && v[i]!=0){

               v[i]=v[i]-(v[i]-(v[i]^exor));
                break;
            }

            else{
                    y++;
                    y=0;
            }
    printf("%d",v[0]);
    for(i=1;i<i2;i++)
        printf(" %d",v[i]);
    printf("\n");
    return 0;
}