#include <bits/stdc++.h>
char s[200010];
int c[65536];
unsigned a[32][200010], b[32][200010];
int cnt(unsigned x) { return c[x >> 16] + c[x & 65535]; }
int main() {
  int m, i, j, x, y, l, r;
  scanf("%s", s);
  for (j = 0; j < 32; j++) {
    for (i = 0; s[j + i]; i++)
      a[j][i >> 5] |= s[j + i] == '1' ? 1 << (i & 31) : 0;
  }
  scanf("%s", s);
  for (j = 0; j < 32; j++) {
    for (i = 0; s[j + i]; i++)
      b[j][i >> 5] |= s[j + i] == '1' ? 1 << (i & 31) : 0;
  }
  for (i = 0; i < 65536; i++) c[i] = c[i >> 1] + (i & 1);
  scanf("%d", &m);
  while (m--) {
    scanf("%d%d%d", &x, &y, &l);
    r = 0;
    for (i = x >> 5, j = y >> 5; l > 31; i++, j++, l -= 32)
      r += cnt(a[x & 31][i] ^ b[y & 31][j]);
    r += cnt((a[x & 31][i] ^ b[y & 31][j]) & ((1 << l) - 1));
    printf("%d\n", r);
  }
}
