Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package baraja;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.Collections;
- import java.util.Iterator;
- import java.util.Scanner;
- public class Baraja {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- // leer cadena e introducirla en un array
- ArrayList<String> Cartas = new ArrayList();
- ArrayList<String> CadenaRep = new ArrayList();
- ArrayList<Integer> numUsed = new ArrayList();
- ArrayList<String> CadEnd= new ArrayList();
- ArrayList<Integer> Oros = new ArrayList();
- ArrayList<Integer> Copas = new ArrayList();
- ArrayList<Integer> Espadas = new ArrayList();
- ArrayList<Integer> Bastos = new ArrayList();
- ArrayList<String> cadenaFinal = new ArrayList();
- int numOros;
- int numCopas;
- int numBastos;
- int numEspadas;
- Scanner lee = new java.util.Scanner(System.in);
- String cadena = lee.nextLine().trim();
- lee.close();
- String[] serie = cadena.split(" ");
- //eliminar numeros repetidos
- for (int i = 0; i< serie.length; i++){
- boolean num1=false;
- int num2;
- if(serie[i].length()==2){
- num2=Integer.valueOf(serie[i].substring(0, 1))
- .intValue();
- }else{
- num2=Integer.valueOf(serie[i].substring(0, 2))
- .intValue();
- }
- for(int k = 0; k < numUsed.size(); k++){
- if(num2==((Integer) numUsed.get(k)).intValue()){
- num1=true;
- }
- }
- if (!num1) {
- numUsed.add(Integer.valueOf(num2));
- CadenaRep.add(serie[i]);//***********************************************//
- }else{
- for(int k = 0; k< CadenaRep.size();k++){
- int aux1;
- if (((String) CadenaRep.get(k)).length() == 2){
- aux1= Integer.valueOf(((String) CadenaRep.get(k)).substring(0,1)).intValue();
- }else{
- aux1= Integer.valueOf(((String) CadenaRep.get(k)).substring(0,2)).intValue();
- }
- if(num2==aux1){
- CadenaRep.remove(k);
- }
- }
- }
- }
- //almacenamos los palos en diferentes arrays
- for(int i = 0; i< CadenaRep.size(); i++){
- if(CadenaRep.get(i).endsWith("o")){
- if (((String) CadenaRep.get(i)).length() == 2) {
- numOros = Integer.valueOf(
- CadenaRep.get(i).substring(0, 1)).intValue();
- Oros.add(numOros);
- } else {
- numOros = Integer.valueOf(
- CadenaRep.get(i).substring(0, 2)).intValue();
- Oros.add(numOros);
- }
- }
- }
- for(int i = 0; i< CadenaRep.size(); i++){
- if(CadenaRep.get(i).endsWith("c")){
- if (((String) CadenaRep.get(i)).length() == 2) {
- numCopas = Integer.valueOf(
- CadenaRep.get(i).substring(0, 1)).intValue();
- Copas.add(numCopas);
- } else {
- numCopas = Integer.valueOf(
- CadenaRep.get(i).substring(0, 2)).intValue();
- Copas.add(numCopas);
- }
- }
- }
- for(int i = 0; i< CadenaRep.size(); i++){
- if(CadenaRep.get(i).endsWith("b")){
- if (((String) CadenaRep.get(i)).length() == 2) {
- numBastos = Integer.valueOf(
- CadenaRep.get(i).substring(0, 1)).intValue();
- Bastos.add(numBastos);
- } else {
- numBastos = Integer.valueOf(
- CadenaRep.get(i).substring(0, 2)).intValue();
- Bastos.add(numBastos);
- }
- }
- }
- for(int i = 0; i< CadenaRep.size(); i++){
- if(CadenaRep.get(i).endsWith("e")){
- if (((String) CadenaRep.get(i)).length() == 2) {
- numEspadas = Integer.valueOf(
- CadenaRep.get(i).substring(0, 1)).intValue();
- Espadas.add(numEspadas);
- } else {
- numEspadas = Integer.valueOf(
- CadenaRep.get(i).substring(0, 2)).intValue();
- Espadas.add(numEspadas);
- }
- }
- }
- //ahora los ordenamos
- Collections.sort(Oros);
- Collections.sort(Copas);
- Collections.sort(Espadas);
- Collections.sort(Bastos);
- //almacenaremos los arrays en uno unico siguiendo el orden de valor de los palos
- for(int i = 0; i < Oros.size();i++){
- CadEnd.add(Oros.get(i) + "o");
- }
- for(int i = 0; i < Copas.size();i++){
- CadEnd.add(Copas.get(i) + "c");
- }
- for(int i = 0; i < Espadas.size();i++){
- CadEnd.add(Espadas.get(i) + "e");
- }
- for(int i = 0; i < Bastos.size();i++){
- CadEnd.add(Bastos.get(i) + "b");
- }
- for (int i = 0; i< CadEnd.size(); i++){
- if(i == CadEnd.size() - 1){
- System.out.print((String) CadEnd.get(i) + " ");
- System.out.println();
- } else {
- System.out.print((String) CadEnd.get(i) + " ");
- }
- }
- }
- }
- }//1o 2c 10b 1c 11e 7e ejemplo
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement