#include <bits/stdc++.h>
using namespace std;
int n, k, a;
vector<int> arboles;
int main() {
  while (cin >> n >> k) {
    arboles.clear();
    for (int i = 0; i < n; i++) {
      cin >> a;
      arboles.push_back(a);
    }
    int inicial = 0;
    int iguales = 0;
    for (int i = 1; i <= 1000; i++) {
      int mintemp = 0;
      for (int j = 0; j < n; j++) {
        int num = i + (j * k);
        if (num == arboles[j]) {
          mintemp++;
        }
      }
      if (mintemp > iguales) {
        iguales = mintemp;
        inicial = i;
      }
    }
    int contador = 0;
    for (int i = 0; i < n; i++) {
      if (arboles[i] != inicial + (i * k)) {
        contador++;
      }
    }
    cout << contador << endl;
    for (int i = 0; i < n; i++) {
      int arbolactual = arboles[i];
      int numeroactual = inicial + (i * k);
      if (arbolactual > numeroactual) {
        cout << "- " << i + 1 << " " << arbolactual - numeroactual << endl;
      }
      if (arbolactual < numeroactual) {
        cout << "+ " << i + 1 << " " << numeroactual - arbolactual << endl;
      }
    }
  }
  return 0;
}
