Compare pulse count to value - Multiple Inputs

I assume that the inputs from the seven 'runs' will be treated very similarly so that might be another place to use arrays.

const byte RunPins[7] = {10, 11, 12, 13, A0, A1, A2};
bool LastState[7];
unsigned long DebounceTimers[7];

void setup()
{
  for (int p=0; p<7; p++)
    pinMode(RunPins[p], INPUT_PULLUP);
}

void loop()
{
  for (int p=0; p<7; p++)
  {
    bool state = digitalRead(RunPins[p]) == HIGH;
    if (state != LastState[p] && 
      millis() - DebounceTimers[p] >= DEBOUNCE_TIME)
    {
      // State Change Detected (and debounced)
      LastState[p] = state;
      DebounceTimers[p] = millis();
      if (state)
        BulbCounter++;  // Another one went by
     }
  }
}