MNandana Ответов: 2

Как преобразовать код Python в код C++?


n_test_cases=инт(вход())
для J в n_test_cases:
н к=вход.сплит()
РЭС=[]
ы=вход
для i в диапазоне(len(s)):
если s[i]==s[i+1]
РЭС.добавить[с[я]]
i+=1
еще
РЭС.добавить[с[я]]
print(len(res))

Что я уже пробовал:

невозможно пройти все тестовые случаи при преобразовании этого кода python в c++.

Patrice T

И ваш фактический перевод таков ...

2 Ответов

Рейтинг:
2

OriginalGriff

Это не служба преобразования кода: мы здесь не для того, чтобы переводить код для вас.
Даже если бы мы это сделали, то в конечном итоге вы получили бы не “хороший код” на целевом языке – они основаны на очень разных фреймворках, и то, что заставляет что-то работать на одном языке, не всегда "переводится" непосредственно на другой.
Таким образом, вы получаете очень плохой код, который трудно, если не невозможно поддерживать, который не может быть хорошо обновлен, и это вызовет у вас огромную головную боль, если оригинал будет изменен. И это будет кошмар для отладки, если он не будет работать "прямо из коробки".
Вместо этого используйте исходный код в качестве спецификации для нового приложения, написанного на целевом языке / фреймворке, и напишите его с нуля, используя оригинал в качестве “шаблона”. Вы получите гораздо, гораздо лучший результат, который сэкономит вам много времени в долгосрочной перспективе.


Рейтинг:
1

Sandeep Mewara

Это кажется довольно простым и прямолинейным кодом, почему бы не написать для него код на C++ быстро?

Кажется, ниже приведены следующие шаги:
1. Примите входные данные для ни одного из тестовых случаев
2. Выполнить цикл для этого много тестов
3. для каждого тестового случая возьмите количество входных параметров
4. запустите цикл для подсчета параметров
5. если какие-либо два входных параметра совпадают, вы поддерживаете результирующий массив в актуальном состоянии с этим параметром
6. Печать всех параметров теста, которые были уникальны

Понятия не имею, что именно вы пытаетесь сделать выше, но, кажется, прямо вперед, чтобы написать все заново. Попробуйте!

В случае, если вы все еще не хотите делать это самостоятельно (рекомендуется), есть такие инструменты, как На Cython[^], которые могут помочь. Однако в конце концов вам нужно убедиться, что есть какие - то очистки или корректировки, которые нужно сделать-инструменты могут сделать некоторую тяжелую работу, но не 100%