Не покидает чувство, что я допустил ошибку в алгоритме/коде (Python)

Узнай цену своей работы

Формулировка задачи:

Сама задача: "На ежедневную прогулку выводится группа 15 детей. Они построены по трое в пять рядов. Как построить группу, чтобы в ечении 7 дней подряд ни один ребёнок не гулял с каждым из своих соседей по тройке более одного раза" Мой код на питоне:
1. Проходим по матрице по строкам 1.1. В первый столбец строки вставляем элемент, который ещё не был задействован. И который ещё не стоял первым 1.2. Второй столбец. Ищем объект, который не стоял рядом с предыдущим. Сохраняем в хеше связь с прошлым 1.3. Третий столбец. Ищем объект, который не стоял рядом с предыдущим. Сохраняем в хеше связь с прошлым Меня не покидает чувство, что я делаю что-то в корне не правильно. И решение должно быть куда более элегантное. Сейчас у меня программа ломается на на 4 дне... Да и на втором тоже...

Решение задачи: «Не покидает чувство, что я допустил ошибку в алгоритме/коде (Python)»

textual
Листинг программы
#include <iostream>
using namespace std;

void _print_mas(int *mas, int n, int m)
  {
    cout << "\n";
    for (int i = 0; i < n; i++)
	  {
	    for (int j = 0; j < m; j++)
		  {
			cout << mas[i * m + j] << "\t";
		  }
	    cout << "\n";
	  }
  }

int main()
  {
      int ISX[5][3] = { {1, 2, 3},
			{4, 5, 6},
			{7, 8, 9},
			{10,11,12},
			{13,14,15},
		      };

	_print_mas(*ISX,5,3);
	
	int VTOR[8][2] = { {1, 8},
			   {2, 9},
			   {3,10},
			   {4,11},
			   {5,12},
			   {6,13},
			   {7,14},
			   {0,15}
			 };
	
	cout <<"\nДень 1";		 
	_print_mas(*VTOR,8,2);
	
	for (int d=2; d<8; d++)
	    {
		cout <<"\nДень"<<d; int="" push="VTOR[0][1];" for="" (int="" i="0;" <="" 7;="" i++)="" {="" vtor[i][1]="VTOR[i+1][1];" }="" vtor[7][1]="push;" _print_mas(*vtor,8,2);="" return="" 0;="" }<="" code=""></d;></iostream>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.429 из 5