Problem p02596 (C++) — buggy submission, verdict: Runtime Error

/*
 * * * * *       *        * * * * * * * * * * * * * * * * * * * * * * * *     *
 * * * * * * *               * *               * * * * * * * * * *
 * * * * *      * *       * * * * * * * * * * * * * * * * * * * * * *    *    *
 * * * * * * *              * * *             * ** * * * * * * * * *
 * *           * * *            * *     * *     * *      * *          * * *   *
 * * *       *             * * * *           * * * *       * *    * *
 * * * * *    * * * *           * *     * *     * *       * * * * * * *  * *  *
 * * * * * * *            * * * * *         * *  * *       * * * * *
 * * * * *   * * * * *          * *     * *     * *        * * * * ** *   * * *
 * * * * * * *           * * * * * *       * *   * * * *   * * * *
 * *  * * * * * *   * *   * *     * *     * *       * * * * * * *    * ** * * *
 * *          * * * * * * *     * *    * * * *   * *  * *
 * * * *       * *  * *   * *     * *     * *      * *          *     * * * * *
 * *         * *       * * *   * *     * *       * *   * *
 * * * * ** *         * * * * * * * * * * * * * * * * * * * * * * * * *      *
 * * * * * * * * * * ** *         * * * * *      * * * * * * *    * *
 * * * * * *           * ** * * * * * * * * * * * * * * * * * * * * * *       *
 * * * * * * * * * * * *           * * * *       * * * * * * *     * *
 */

#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <set>
#include <string>
#include <vector>
#define ll long long
using namespace std;

ll dp[1000005], A[1000005] = {-1, 1, -1, 3, -1, -1, -1, 1, -1, 9, -1};
int main() {
  ios::sync_with_stdio(0);
  ll n, sum = 0, a = 7;
  cin >> n;
  char s[] = "7";
  if (n <= 10) {
    cout << A[n];
    return 0;
  }
  while (!dp[a]) {
    if (!a) {
      cout << sum + 1;
      return 0;
    }
    dp[a] = 1;
    a = (a * 10 + 7) % n;
    sum++;
  }
  cout << -1;

  return 0;
}


Error: -6
*** stack smashing detected ***: terminated


Fixed submission:

/*
 * * * * *       *        * * * * * * * * * * * * * * * * * * * * * * * *     *
 * * * * * * *               * *               * * * * * * * * * *
 * * * * *      * *       * * * * * * * * * * * * * * * * * * * * * *    *    *
 * * * * * * *              * * *             * ** * * * * * * * * *
 * *           * * *            * *     * *     * *      * *          * * *   *
 * * *       *             * * * *           * * * *       * *    * *
 * * * * *    * * * *           * *     * *     * *       * * * * * * *  * *  *
 * * * * * * *            * * * * *         * *  * *       * * * * *
 * * * * *   * * * * *          * *     * *     * *        * * * * ** *   * * *
 * * * * * * *           * * * * * *       * *   * * * *   * * * *
 * *  * * * * * *   * *   * *     * *     * *       * * * * * * *    * ** * * *
 * *          * * * * * * *     * *    * * * *   * *  * *
 * * * *       * *  * *   * *     * *     * *      * *          *     * * * * *
 * *         * *       * * *   * *     * *       * *   * *
 * * * * ** *         * * * * * * * * * * * * * * * * * * * * * * * * *      *
 * * * * * * * * * * ** *         * * * * *      * * * * * * *    * *
 * * * * * *           * ** * * * * * * * * * * * * * * * * * * * * * *       *
 * * * * * * * * * * * *           * * * *       * * * * * * *     * *
 */

#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <set>
#include <string>
#include <vector>
#define ll long long
using namespace std;

int main() {
  ll n, c = 0;
  cin >> n;
  char s[] = "7";
  if (n == 2) {
    cout << "-1" << endl;
  } else {
    for (int i = 0;; i++) {
      if (s[i] % n == 0) {
        c = strlen(s);
        break;
      } else {
        s[i + 1] = s[i] + '7';
        continue;
      }
    }
    cout << c << endl;
  }

  return 0;
}