Вопрос

I'm trying to find the distance between two characters in the alphabet. However, it's OK to go from A->Z or Z->A in one step. Given two characters, how do I find the distance?

Это было полезно?

Решение

Subtract the two characters from each other making the result positive if it's negative.

From there, the answer is either that value, or if it's more than 13, it's 26 - value.

char a = '<SOME LETTER>';
char b = '<SOME LETTER>';

char distance = abs(a-b);
if (distance > 13) {
  distance = 26 - distance;
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top