Wpis z mikrobloga

@navaro: Co chcesz tym osiągnąć:

String alphabet = "abcdefghijklmnopqrstuwxyz";

for (int i = 0; i < input.length()/2; i++) {

first = input.charAt(i);

last = input.charAt(input.length() - 1 - i);

if (first != last) {

difference = Math.abs(alphabet.indexOf(last) - alphabet.indexOf(first));

}

counter += difference;

}

Bo, z tego co zrozumiałem z opisu zadania, to algorytm ma sprawdzać, czy kolejna litera nie jest przypadkiem taka sama, tak?

Jeżeli tak, to dodajesz +1 do
  • Odpowiedz
@navaro: a to nie powinno być coś takiego?

String alphabet = "abcdefghijklmnopqrstuwxyz";

for (int i = 0; i < input.length(); i++) {

// pobierasz kolejny znak

first = input.charAt(i);

// sprawdzasz różnicę "redukcji" dla danego znaku i dodajesz do ogólnej liczby wszystkich redukcji

counter += alphabet.indexOf(first) - 1; // 1(jedynka) jest odpowiednikiem wartości "a"

}
  • Odpowiedz