fork download
  1. #include <stdio.h>
  2. #include <string.h>
  3. void f(const char *s, int *out, int *len) {
  4. int i;
  5. for (*len = strlen(s), i = 0; i < *len; i++)
  6. out[i] = (i == 0 || i == *len - 1) ? 0 : s[i - 1] & s[i + 1] & 1;
  7. }
  8. void p(int *a, int n) {
  9. int i;
  10. putchar('[');
  11. for (i = 0; i < n; i++) {
  12. if (0 < i) printf(", ");
  13. printf("%d", a[i]);
  14. }
  15. puts("]");
  16. }
  17. int main() {
  18. const char *s;
  19. int buff[8], len;
  20. f(s = "", buff, &len), puts(s), p(buff, len);
  21. f(s = "a", buff, &len), puts(s), p(buff, len);
  22. f(s = "ab", buff, &len), puts(s), p(buff, len);
  23. f(s = "abc", buff, &len), puts(s), p(buff, len);
  24. return 0;
  25. }
  26.  
Success #stdin #stdout 0s 5296KB
stdin
Standard input is empty
stdout
[]
a
[0]
ab
[0, 0]
abc
[0, 1, 0]