Difference between revisions of "Solução: Problema do baile de casais (Cátia Souza)"

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
(New page: import java.io.BufferedReader; import java.io.Console; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.ut...)
 
 
Line 1: Line 1:
 +
<code lang="java">
 
import java.io.BufferedReader;
 
import java.io.BufferedReader;
 
import java.io.Console;
 
import java.io.Console;
Line 74: Line 75:
  
 
}
 
}
 +
</code>

Latest revision as of 13:50, 20 May 2009

import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Scanner;
import java.util.SortedMap;
import java.util.SortedSet;
import java.util.TreeSet;
 
 
public class BaileCasais {
 
	/**
	 * @param args
	 */
	public static void main(String[] args) throws IOException{
 
 
		ArrayList<Integer> Homens = new ArrayList<Integer>();
		SortedSet<Integer> Mulheres= new TreeSet<Integer>();
 
        Scanner scanner = new Scanner( System.in );
        Integer numeroConvidados = scanner.nextInt();
 
        while(numeroConvidados>0){
        	Integer convidado;
        	if((convidado = scanner.nextInt())%2==0){
        		Mulheres.add(convidado);
        	}
        	else{
        		Homens.add(convidado);
        	}
        	numeroConvidados--;
        }
        System.out.println(juntaCasais(Homens,Mulheres));
 
 
	}
 
	public static Character juntaCasais(ArrayList<Integer> homis, SortedSet<Integer> muies){
		int iteracoes = muies.size();
		boolean juntou;
 
		while(iteracoes>=0){
			if(!muies.isEmpty()){
				Integer muie = muies.last();
				juntou=false;
				for(Integer homi: homis){
					if((juntou==false) && (homi>muie)){
						muies.remove(muie);
						juntou = true;
					}
				}
				if(juntou==false)
					return 'F';
				iteracoes--;
			}
			else{
				break;
			}		
 
 
		}
 
		if(muies.isEmpty()){
			return 'S';
		}
 
		return 'F';
 
	}
 
}