Ejercicio java: Collar con cuentas de colores- Solución 2
La teoría del ejercicio lo encuentras en :
http://gordodav.blogspot.com/2012/11/ejercicio-java-collar-con-cuentas-de.html
package ejeCollar;
import java.util.Scanner;
public class aplic {
public static void main(String[] args) {
Scanner leer=new Scanner(System.in);
collar co=null;
String col=leer.nextLine();
co=new collar(col);
System.out.println(co.colores()+"\t"+co.cantidad());
}
}
http://gordodav.blogspot.com/2012/11/ejercicio-java-collar-con-cuentas-de.html
Solución 2.
Clase principal:
import java.util.Scanner;
public class aplic {
public static void main(String[] args) {
Scanner leer=new Scanner(System.in);
collar co=null;
String col=leer.nextLine();
co=new collar(col);
System.out.println(co.colores()+"\t"+co.cantidad());
}
}
Clase collar:
package ejeCollar;
public class collar {
static private char[]lista1;
static private char[]lista;
public collar(String t){
lista1=t.toCharArray();
lista=t.toCharArray();
}
public static int cantidad(){
int m = 0;
int may=1;
for (int i = 0; i < lista1.length-1; i++) {
if (lista1[i]==lista1[i+1]) {
may++;
if (m<may) {
m=may;
}
}
else{
may=1;
}
}
return m;
}
public static int colores(){
int c = 0;
for (int i = 0; i < lista.length; i++) {
for (int j = i+1; j <= lista.length-1; j++) {
if (lista[i]==lista[j]) {
lista[j]='.';
}
}
}
for (int i = 0; i < lista.length; i++) {
if (lista[i]!='.') {
c++;
}
}
return c;
}
}
Post a Comment