Encontrar pares de anagramas em uma String java

36 respostas Resolvido
java
T

Pessoal estou com dificuldade de encontrar solução para seguinte questão: escreva um algoritimo em java que retorne a quantidade de pares de substrings que são anagramas em uma String:

Entrada: ovo
Saida: 3 = “o,o”; “ov, vo”

Entrada: ifailuhkqq
Saida: 3 = “i,i”; “q, q”; “ifa, fai”;

Problema 1 - se vocês observarem a primeira entrada conta-se dois pares o seguinte anagrama - “ov” e “vo”, mas na segunda entrada, o anagrama “ifa” e “fai” conta como um só. É um erro da questão, ou há alguma lógica por detrás disso?

Problema 2 - A saída deve ser um número com a quantidade total de anagramas, criei um ArrayList para controlar a quantidade de anagramas, mas para minha surpresa descobri que não posso utilizar a propriedade .length() em um ArrayList ou List, como posso fazer para extrair a quatidade de itens na lista?

Escrevi o código abaixo

public static void main(String[] args) {
		
		String palavra = "ovo";
		ArrayList<String> anagramas = new ArrayList<String>();
		
		for(int i = 0; i <palavra.length(); i++) {
			for(int j = 1; j < palavra.length(); j++) {
				if(palavra.charAt(i) == palavra.charAt(j) && i !=j && i < j) {
					if(palavra.charAt(i) == palavra.charAt(i+1)) {
					String x = palavra.substring(i, i + 1);
					anagramas.add(x);
					} else {
					String y = palavra.substring(i, j);
					String z = palavra.substring(i + 1, j + 1);
					String h = palavra.substring(i, i + 1);
					anagramas.add(h);
					anagramas.add(y);
					anagramas.add(z);
					}
				}
			}
		}
		
		System.out.println(anagramas);
	}

36 Respostas

S

Para extrair a quantidade de itens em da lista é só fazer isso:

System.out.println(anagramas.size());

Sobre o problema 1 eu acho que foi um erro de digitação, não sei.

obs: acho que estamos fazendo o mesmo desafio, então boa sorte.

T

Consegui resolver! Realmente, havia um problema de digitação.
Espero que tenha conseguido também, boa sorte pra vc também!

P

Boa tarte pessoal! Alguem objteve alguma resposta do processo ?

T

Não cara, estou tentando não ficar ansioso ou criar expectativas.

S

Pra mim também nada ainda, acho que vamos receber alguma coisa entre os dias 21/02 e 11/03 pelo menos é o que tá escrito no site

P

Uai mosso, como que faz isso ? kkk pq eu ja criei expectativas e estou ansioso kkkkk

P

acho que e isso mesmo… mas ansiedade e muita kkk

S

Eu também tô assim…kkkkk, ainda mais eu que ainda não tenho 18, que é a idade mínima pra se inscrever, vou fazer essa semana então se puder demorar um pouco pra eles responderem melhor kkkkk

P

Mas se você faz essa semana creio que não ira atrapalhar não, até porque ainda tem mais uma etapa antes da contratação

T

Muita meditação e respiração… E parar de abrir o e-mail ou o site do proway toda hora, pq não tem nda lá xD

Vamos nos atualizando!

T

Só no sapatinho… kkkkk

S

Difícil não ficar abrindo o email toda hora, tipo é a primeira coisa que eu faço quando eu acordo kkkk

P

o site e sempre bom ficar abrindo, essa ultima etapa mesmo, eles liberou o desfio la na segunda e me mandaram email so na terça

P

eu abro quando acordo, quando vou toma cafe, quando vou almoçar, quando tenho um tempinho livre, quando não tenho um tempinho mas lembro, paro o que to fazendo so pra olhar kkkkkkk

T

Alguma atualização pessoal?

P

Nada ainda, creio que eles daram retorno na semana que vem, deve esta avaliando os projetos ainda

S

GENTE, recebi uma email da capgemini marcando a entrevista do processo seletivo, vocês receberam também?

P

serio ?? eu ainda não recebi não

S

sim, talvez você ainda receba já que vai até dia 11/03

P

sera? tomara viu, tava com muita esperança

P

sera que o @Tyler_Durden tbm recebeu

S

Não sei mas quando ele vê as mensagens ele fala

P

preocupei aqui agr :frowning: de não ter passado :frowning: , mas boa sorte la, tomara que de tudo certo para você.

S

relaxa você vai passar tambem, ai nós vamos trabalhar juntos, só mantenha a calma :slight_smile:

P
Solucao aceita

tomara que sim rsrs mas dificil e manter a calma agora kkk no email eles fala do seu projeto ?

S

Nâo, eles só falam que estão dando continuidade ao processo seletivo, ai eles dão uma data e horario pra entrevista via teams.

P

entendi, vlw por nos avisar aqui, qualquer coisa se eu tiver um retorno posto aqui tbm…

T

Parabéns Samira! Jogue duro na entrevista. Não chegou nada pra mim, mas qualquer coisa atualizo aki!

P

@Samira_Lima você recebeu algum e-mail do processo hoje ? falando que quem não entregou o projeto do primeiro desafio pode entregar o segundo ?
creio que e um e-mail automático, pois ja entreguei o primeiro desafio, eles até pede para desconsiderar quem ja entregou kkk porém como eles ja te responderam dizendo que você foi aprovada, caso se eles não tiver te mandado o esse e-mail, vou fazer o segundo desafio e entregar de novo kkk e se tiver mandado teri a certeza que e email automático kkk

S

Recebi sim, acho que é um email automático mesmo

P

a sim. entao ta bom. obrigrado. :slight_smile: ja fiz o desafio 2 aqui tbm kkk fico muito ansioso ai vou fiz ele para envolver a mente kkk achei bem mais facil que o primeiro

P

estou achando que não fui aprovado não :frowning:

P

e ai @Tyler_Durden teve retorno do pessoal ?

T

Não recebi nada também mano, acho que não passei também. Ruim é esperar até 25/03 pra ter um feedback.

P

triste mano :frowning: o ruim mesmo que esses feedback geralmente eles nem fala o motivo pq não passou

P

@Tyler_Durden mandei um e-mail para eles e a primeira turma ja fechou, mas quem realizou todos os processo ainda tem chance de ser chamado para segunda turma.

Criado 16 de fevereiro de 2022
Ultima resposta 7 de mar. de 2022
Respostas 36
Participantes 3