Sicily 1790. Single Round Match

高进度求余

或者

将一个数奇位上的数字与偶位上的数字分别加起来,再求它们的差,如果这个差是11的倍数(包括0),那么,原来这个数就一定能被11整除.


 

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string b,g;
	int T;
	cin>>T;
	while(T--)
	{
		cin>>b>>g;
		if(b != g)
		{
			cout<<"NO"<<endl;
			continue;
		}
		int sum1 = 0, sum2 = 0;
		int n = b.size();
		for(int i = 0;i < n;++i)
		{
			if(i%2)
				sum1 += b[i] - '0';
			else
				sum2 += b[i] - '0';
		}
		if((sum1 - sum2)%11 == 0)
			cout<<"YES"<<endl;
		else
			cout<<"NO"<<endl;
	}
	return 0;
}


 

 

posted on 2013-07-28 21:24  you Richer  阅读(168)  评论(0编辑  收藏  举报