Кубик Рубика - механическая головоломка, изобретённая в 1974 году венгерским скульптором и преподавателем архитектуры Эрнё Рубиком
rynaodal
06.12.2021
Только программа, блок-схему не знаю #include <iostream> #include <iomanip> #include <vector> #include <ctime> int main() { using namespace std;
const int n = 5; int A[n][n]; int D[n][n]; vector<int> B(n); vector<int> C(n); vector<int> S(n); //результирующий вектор
//как-нибудь заполняем исходные матрицы и вектора srand(time(0)); for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { A[i][j] = rand() % (n * n) - n * n / 2; D[i][j] = rand() % (n * n) - n * 2; } B[i] = rand() % (n * n) - n; C[i] = rand() % (n * n) - n * n + n; }
//выведем исходные данные на экран cout << "matrix A:\n"; for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) cout << setw(5) << A[i][j]; cout << endl; }
cout << "\nmatrix D:\n"; for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) cout << setw(5) << D[i][j]; cout << endl; }
cout << "\nvector B:\n"; for (int i = 0; i < n; ++i) cout << setw(5) << B[i] << endl;
cout << "\nvector C:\n"; for (int i = 0; i < n; ++i) cout << setw(5) << C[i] << endl;
//вычислим требуемое for (int i = 0; i < n; ++i) { S[i] = 0; for (int j = 0; j < n; ++j) S[i] += D[i][j] * C[j]; S[i] += 3 * B[i]; }
//выведем результат на экран cout << "\nvector S = D * C + 3 * B:\n"; for (int i = 0; i < n; ++i) cout << setw(5) << S[i] << endl;
return 0; }
Решетникова
06.12.2021
Думаю, логика у нас здесь будет такая: нужно разложить данные три числа на простые сомножители. Получится: 132 = 2 * 2 * 3 * 11 106 = 2 * 53 134 = 2 * 67 Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее: от первого - 2 * 2 * 3 * 11 от второго - 53 (двойку не берём, потому что она уже взята с первым) от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи: первый намотает 3551 круг второй - 4422 круга третий - 3498 кругов.