Даны два массива a_{1,2,...n} и b_{1,2,...n}, состоящих из n положительных целых чисел. Надо составить такой массив c_{1,2,...n} , что для каждого i выполняется следующее условие: c_i=a_i либо c_i=b_i. Красота массива количество различных чисел в нем. Найдите максимальную красоту массива с которую можно достичь.
Мой код:3mnoD2 - Online C++0x Compiler & Debugging Tool - Ideone.com
Где ошибка?
1 лайк
Было тяжело понять ваш код (спасибо за отсутствие комментариев или хоть какого либо объяснения хода мыслей ). Но как вариант, вы проверяете left1<left2, и если это не верно, то вы выбираете v2 для c. Но это не правильно, например
a: b:
1 2
2 2
1 3
1 4
Ваш код выберет после первой итерации c[1]=2, хотя лучше было бы выбрать с[1]=1
И в целом ваш подход к решению: “на каждой итерации выбирать более редкое число” не верен. Например
a b
1 2
1 3
1 3
4 2
5 2
6 2
7 2
После первой итерации ваш алгоритм выберет единицу из первой строчки, так как единица более редкая. Но правильным выбором будет двойка.
2 лайка
Do you want a tip or a full solution?