2011年5月7日 星期六

ACM 10929 You can say 11

這題會有像0012、0011這種測資,所以要小心...


#include <stdio.h>

int main(void)
{
    char n[1001];
    int even, i, a;
   
    while (gets(n) != NULL)
    {
        if (n[0] == '0' && n[1] == '\0')
            break;
        i = a = even = 0;
        while (n[i] != '\0')
        {
            if (even)
                a = a+(n[i]-'0');
            else
                a = a-(n[i]-'0');
            even = !even;
            i++;
        }
        if (a%11)
            printf("%s is not a multiple of 11.\n", n);
        else
            printf("%s is a multiple of 11.\n", n);
    }
   
    return 0;
}

沒有留言:

張貼留言