Member 14045447 Ответов: 2

Из Python в C++ Ланг


Эй, ребята!
Я был бы очень благодарен, если бы вы переписали этот код с Python на C++

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

def move(a, k):
    a = list(a)
    while k != 0:
        i = len(a)-1
        m = a[i]
        for i in range(len(a)-1,0,-1):
            a[i] = a[i-1]
        a[0] = m
        k -= 1
    return a
 
srav = str(input())
srav = list(srav)
str1 = str(input())
leen = len(str1)
 
 
flag = True
 
for k in range(leen):
    trry = move(str1, k)
    if trry == srav:
        flag = False
        print(leen - k)
if flag:
    print(int(-1))

2 Ответов

Рейтинг:
2

Richard MacCutchan

Извините, но этот сайт не предоставляет услуги бесплатного программирования, преобразования или домашнего задания.


Рейтинг:
1

CPallini

Попробуй

#include <iostream>
using namespace std;

int cmprot(const string & s1, const string & s2)
{
  size_t len = s2.length();
  if ( s1.length() != len ) return -1;

  for (size_t offset = 1; offset <=len; ++offset)
  {
    size_t n;
    for (n =0; n<len; ++n)
      if ( s1[n] != s2[(offset+n)%len])
        break;
    if ( n == len)
      return offset;
  }
  return -1;
}

int main()
{
  string s1,s2;
  cin >> s1;
  cin >> s2;
  cout << cmprot(s1, s2) << endl;
}