#include <cstdint>
#include <iostream>
#include <utility>
#include <vector>
#include "squirrel.h"

std::vector<std::vector<int>> read_input() {
  int N;
  std::cin >> N;
  std::vector<std::vector<int>> mat(N);
  for (int i = 0; i < N; i++) {
    mat[i].resize(i + 1);
    for (auto& x : mat[i]) {
      std::cin >> x;
    }
  }
  return mat;
}

void print_output(long long answer, std::vector<int> solution) {
  std::cout << answer << "\n";
  for (auto i = 0u; i < solution.size(); i++) {
    if (i > 0) {
      std::cout << " ";
    }
    std::cout << solution[i];
  }
  std::cout << "\n";
}

int main() {
  auto mat = read_input();
  long long result;
  std::vector<int> solution;
  solution.reserve(mat.size());

  int n = mat.size();
  solve(n, 
        std::move(mat), 
        result, 
        solution);

  print_output(result, std::move(solution));
  return 0;
}
