Hamming

Hamming

Легка

Вступ

Наше тіло складається з клітин, які містять ДНК. Ці клітини регулярно зношуються і потребують заміни, а заміна відбувається шляхом поділу на дочірні клітини. Насправді, у середньому людське тіло за життя зазнає близько 10 квадрильйонів поділів клітин!

Коли клітини діляться, їхня ДНК теж реплікується. Іноді під час цього процесу трапляються помилки, і окремі ділянки ДНК отримують неправильну інформацію. Якщо порівняти два ланцюги ДНК і порахувати відмінності між ними, можна побачити, скільки помилок сталося. Це називається «відстанню Геммінга».

Відстань Геммінга корисна в багатьох галузях науки, не лише в біології, тож із цим терміном варто ознайомитися :)

Вказівки

Обчисліть відстань Гаммінга між двома ланцюгами ДНК.

Ми читаємо ДНК за допомогою літер C, A, G і T. Два ланцюги можуть мати такий вигляд:

GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^  ^ ^    ^^

У них 7 відмінностей, а отже, відстань Гаммінга дорівнює 7.

Примітки щодо реалізації

Відстань Гаммінга визначена лише для послідовностей однакової довжини, тому спроба обчислити її між послідовностями різної довжини не повинна працювати.

Підказки

Це перша вправа, у тестах якої потрібно кинути Exception. Exception зазвичай кидають, щоб показати, що програма зіткнулася з неочікуваними вхідними даними або станом.

Тести впродовж усього навчання перевірятимуть, що кинуті винятки:

  1. є примірниками вказаного типу Java;
  2. (необовʼязково) ініціалізовані вказаним повідомленням.
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
Java Exercism

Час розпочати Hamming?

Зареєструйтеся на Exercism, щоб вивчати й опановувати Java, а також 26 концепцій158 вправ та справжнє наставництво від людей, і все це безкоштовно.