CSU 1266: Divisible by 11 (数学啊 )

题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1266


Description

对于一个整数x,记x的自右向左的各位分别为第1位,第2位,……如果x奇数位上的数字之和减去偶数位上的数字之和所得的结果能被11整除,那么x就能被11整除。

Input

输入数据的第一行包含一个整数T (1 <= T <= 200),表示接下来一共有T组测试数据。

每组测试数据占一行,包含一个位数不超过100位的正整数x

Output

对于每组测试数据,如果x能被11整除,输出“Yes”(不包括引号),否则输出“No”(不包括引号)。

Sample Input

3
111
1969
11111111111111111111

Sample Output

No
Yes
Yes

HINT

Source

中南大学第七届大学生程序设计竞赛-热身赛


代码如下:

#include <cstdio>
#include <algorithm>
using namespace std;
int main()
{
    int t;
    char s[217];
    scanf("%d",&t);
    while(t--)
    {
        scanf("%s",s);
        int ji=0,ou=0;
        for(int i=0; s[i]; i++)
        {
            if(i&1)
                ji+=s[i]-'0';
            else
                ou+=s[i]-'0';
        }
        if((ji-ou)%11==0)
            printf("Yes\n");
        else
            printf("No\n");
    }
    return 0;
}


你可能感兴趣的:(数学,CSU)