#include <stdio.h>
int fuzzyStrcmp(char s[], char t[]) {
int i;
for (i = 0; s[i] != '\0' && t[i] != '\0'; i++) {
char c1 = s[i];
char c2 = t[i];
if ('A' <= c1 && c1 <= 'Z') c1 = c1 + 32;
if ('A' <= c2 && c2 <= 'Z') c2 = c2 + 32;
if (c1 != c2) {
return 0;
}
}
if (s[i] == '\0' && t[i] == '\0') {
return 1;
}
return 0;
}
int main(void) {
printf("abC と Abc の比較: %d\n", fuzzyStrcmp
("abC", "Abc")); printf("abc と abc の比較: %d\n", fuzzyStrcmp
("abc", "abc")); printf("abx と Aby の比較: %d\n", fuzzyStrcmp
("abx", "Aby"));
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgoKaW50IGZ1enp5U3RyY21wKGNoYXIgc1tdLCBjaGFyIHRbXSkgewogICAgaW50IGk7CiAgICBmb3IgKGkgPSAwOyBzW2ldICE9ICdcMCcgJiYgdFtpXSAhPSAnXDAnOyBpKyspIHsKICAgICAgICBjaGFyIGMxID0gc1tpXTsKICAgICAgICBjaGFyIGMyID0gdFtpXTsKCiAgICAKICAgICAgICBpZiAoJ0EnIDw9IGMxICYmIGMxIDw9ICdaJykgYzEgPSBjMSArIDMyOwogICAgICAgIGlmICgnQScgPD0gYzIgJiYgYzIgPD0gJ1onKSBjMiA9IGMyICsgMzI7CgogICAgICAgIGlmIChjMSAhPSBjMikgewogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICB9CiAgICB9CgogICAgaWYgKHNbaV0gPT0gJ1wwJyAmJiB0W2ldID09ICdcMCcpIHsKICAgICAgICByZXR1cm4gMTsgCiAgICB9CiAgICAKICAgIHJldHVybiAwOyAKfQoKaW50IG1haW4odm9pZCkgewogICAgCiAgICBwcmludGYoImFiQyDjgaggQWJjIOOBruavlOi8gzogJWRcbiIsIGZ1enp5U3RyY21wKCJhYkMiLCAiQWJjIikpOyAKICAgIHByaW50ZigiYWJjIOOBqCBhYmMg44Gu5q+U6LyDOiAlZFxuIiwgZnV6enlTdHJjbXAoImFiYyIsICJhYmMiKSk7IAogICAgcHJpbnRmKCJhYngg44GoIEFieSDjga7mr5TovIM6ICVkXG4iLCBmdXp6eVN0cmNtcCgiYWJ4IiwgIkFieSIpKTsgCgogICAgcmV0dXJuIDA7Cn0K